File size: 2,527 Bytes
c89f816
 
 
 
 
 
 
 
 
 
 
6f62668
08aeef1
 
1e855eb
c89f816
7f85743
c89f816
 
2557c17
c89f816
 
7f85743
c89f816
e3ef12e
64c2e38
c89f816
dd8119d
 
 
93d46ec
7f85743
c89f816
 
83ebab0
 
c89f816
 
 
 
 
 
 
 
 
 
 
 
 
1049542
66aa609
1049542
c89f816
1049542
31d7e58
2557c17
d9c040b
2557c17
d9c040b
982fd4b
2557c17
d9c040b
2557c17
c89f816
1049542
dab8f6c
b4ce788
1049542
 
 
f941faa
34fed18
 
eec1151
0bf8c3b
c89f816
eec1151
f941faa
 
 
037130f
c89f816
 
 
 
 
 
 
 
 
 
 
 
 
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
FROM ubuntu:18.04


RUN apt-get update && apt-get install --no-install-recommends -y \
  build-essential \
  python3.8 \
  python3-pip \
  python3-setuptools \
  git \
  wget \
  && apt-get clean && rm -rf /var/lib/apt/lists/*
  
RUN apt-get update && apt-get install ffmpeg libsm6 libxext6  -y
  
# RUN echo $(ls /run/secrets/)


WORKDIR /code

COPY ./requirements.txt /code/requirements.txt

# add conda
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -P /code/
RUN chmod 777 /code/Miniconda3-latest-Linux-x86_64.sh
RUN /code/Miniconda3-latest-Linux-x86_64.sh -b -p /code/miniconda
ENV PATH="/code/miniconda/bin:${PATH}"

RUN groupadd miniconda
RUN chgrp -R miniconda /code/miniconda/ 
RUN chmod 770 -R /code/miniconda/ 


# Set up a new user named "user" with user ID 1000
RUN useradd -m -u 1000 user
RUN adduser user miniconda

# Switch to the "user" user
USER user
# Set home to the user's home directory
ENV HOME=/home/user \
	PATH=/home/user/.local/bin:$PATH \
    PYTHONPATH=$HOME/app \
	PYTHONUNBUFFERED=1 \
	GRADIO_ALLOW_FLAGGING=never \
	GRADIO_NUM_PORTS=1 \
	GRADIO_SERVER_NAME=0.0.0.0 \
	GRADIO_THEME=huggingface \
	SYSTEM=spaces

RUN conda install python=3.8

RUN pip3 install setuptools-rust

RUN conda install pillow -y

RUN pip3 install --no-cache-dir --upgrade -r /code/requirements.txt

# RUN conda install -c conda-forge pytorch-cpu==1.7.1

# RUN conda install -c pytorch torchvision-cpu==0.8.2
# RUN pip install torchvision-cpu==0.8.2

# RUN pip install openmin

RUN conda install -c conda-forge gradio -y 

 
# RUN --mount=type=secret,id=git_token,mode=0444,required=true \
#     echo $(https://$(cat /run/secrets/git_token)@github.com/NASA-IMPACT/hls-foundation-os.git) 
#     # git clone https://$(cat /run/secrets/git_token)@github.com/NASA-IMPACT/hls-foundation-os.git

WORKDIR /home/user

RUN --mount=type=secret,id=git_token,mode=0444,required=true \
    git clone https://$(cat /run/secrets/git_token)@github.com/NASA-IMPACT/hls-foundation-os.git


WORKDIR hls-foundation-os 

RUN pip3 install fine-tuning-examples/


# RUN --mount=type=secret,id=git_token,mode=0444,required=true \
#     pip3 install git+https://$(cat /run/secrets/git_token)@github.com/NASA-IMPACT/hls-foundation-os.git@mmseg-only

RUN mim install mmcv-full==1.5.0

# Set the working directory to the user's home directory
WORKDIR $HOME/app

# Copy the current directory contents into the container at $HOME/app setting the owner to the user
COPY --chown=user . $HOME/app

CMD ["python3", "app.py"]