File size: 1,808 Bytes
f08f75d
 
 
 
 
 
 
 
 
416a0e7
f08f75d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
416a0e7
f08f75d
 
 
 
 
416a0e7
f08f75d
 
 
416a0e7
 
f08f75d
416a0e7
f08f75d
edad43a
f08f75d
edad43a
f08f75d
edad43a
f08f75d
416a0e7
52f0e33
416a0e7
 
c0fa236
c6bab08
fc2683f
c6bab08
99b244e
 
 
13d6305
3c4c59b
13d6305
b817fee
 
f08f75d
13d6305
f08f75d
6f1f3b5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# Use an official Python runtime as a base image
FROM ubuntu:18.04
FROM python:3.9-slim

# Expose the port to run it
ENV LISTEN_PORT=5000
EXPOSE 5000

LABEL Maintainer="arts-of-coding"
RUN useradd -m -u 1000 user

WORKDIR /

# fix locales
RUN apt-get update \
    && apt-get install -y --no-install-recommends locales \
    && rm -rf /var/lib/apt/lists/* \
    && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
 
ENV LANG en_US.utf8
 
# install blobfuse
RUN apt-get update \
    && apt-get install -y wget apt-utils \
    && wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb \
    && dpkg -i packages-microsoft-prod.deb \
    && apt-get remove -y wget \
    && apt-get update \
    && apt-get install -y --no-install-recommends fuse blobfuse libcurl3-gnutls libgnutls30 \
    && rm -rf /var/lib/apt/lists/*

COPY --chown=user mount-blobfuse.sh /
RUN chmod +x /mount-blobfuse.sh
#COPY --from=compiler /opt/venv/bin/activate /usr/local/bin/activate_venv

#ADD /data/ /app/data/

WORKDIR /app

# Preset the volume change this to the actual azure folder
#VOLUME /dash_plotly_QC_scRNA/./data
COPY --chown=user ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt

COPY --chown=user . /app

COPY --chown=user ./mount-blobfuse.sh mount-blobfuse.sh 

COPY --chown=user ./dash_plotly_QC_scRNA.py dash_plotly_QC_scRNA.py

COPY --chown=user ./main.py main.py

USER user

ENV HOME=/home/user \
	PATH=/home/user/.local/bin:$PATH

USER root
RUN mkdir /azure

USER root
RUN chmod +x ./mount-blobfuse.sh

USER root
RUN '/mount-blobfuse.sh'

USER user

# How the docker app will run
#ENTRYPOINT ["/bin/bash", "-c", "/mount-blobfuse.sh; exec $SHELL"]

CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "5000"]