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