File size: 2,064 Bytes
c89f816
 
 
 
 
 
 
 
 
 
 
6f62668
08aeef1
 
c89f816
 
 
7f85743
c89f816
e3ef12e
64c2e38
c89f816
dd8119d
 
 
93d46ec
7f85743
c89f816
 
83ebab0
 
c89f816
 
 
 
 
 
 
 
 
 
 
 
 
1049542
66aa609
1049542
c89f816
1049542
31d7e58
4a5121a
1325cd5
 
 
1049542
dab8f6c
34fed18
 
eec1151
4a5121a
c89f816
eec1151
f941faa
 
4a5121a
c89f816
4a5121a
c89f816
4a5121a
c89f816
 
 
4a5121a
 
c89f816
 
 
fde2122
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
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
  
WORKDIR /code

# 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 torch==1.11.0+cu115 torchvision==0.12.0+cu115 --extra-index-url https://download.pytorch.org/whl/cu115

RUN pip3 install openmim

RUN conda install -c conda-forge gradio -y 

WORKDIR /home/user

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


WORKDIR hls-foundation-os 

RUN pip3 install -e .

RUN mim install mmcv-full==1.6.2 -f https://download.openmmlab.com/mmcv/dist/11.5/1.11.0/index.html

RUN pip3 install rasterio scikit-image
# Set the working directory to the user's home directory
WORKDIR $HOME/app

ENV LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/code/miniconda/lib"

# 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"]