File size: 2,174 Bytes
7645c5b
5af1287
 
 
 
7645c5b
 
 
5af1287
 
 
 
 
 
 
 
 
7645c5b
 
 
 
5af1287
7645c5b
 
 
5af1287
 
 
 
7645c5b
5af1287
 
 
 
 
 
 
 
 
 
 
 
 
 
7645c5b
5af1287
7645c5b
5af1287
7645c5b
5af1287
7645c5b
5af1287
7645c5b
5af1287
7645c5b
 
5af1287
 
 
 
7645c5b
5af1287
 
 
 
7645c5b
5af1287
 
 
7645c5b
5af1287
 
 
7645c5b
5af1287
 
 
 
 
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
FROM --platform=linux/amd64 python:3.8


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 pip install setuptools-rust

RUN pip install pillow

RUN pip install torch==1.11.0+cu115 torchvision==0.12.0+cu115 --extra-index-url https://download.pytorch.org/whl/cu115

RUN pip install openmim

RUN pip install --upgrade setuptools
RUN pip install gradio

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 && git checkout 9968269915db8402bf4a6d0549df9df57d489e5a


WORKDIR hls-foundation-os 

RUN pip 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 pip 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"]