FROM nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04 ARG DEBIAN_FRONTEND=noninteractive ENV PYTHONUNBUFFERED=1 RUN apt-get update && apt-get install --no-install-recommends -y \ build-essential \ wget \ git \ && apt-get clean && rm -rf /var/lib/apt/lists/* WORKDIR /code COPY ./requirements.txt /code/requirements.txt # Set up a new user named "user" with user ID 1000 RUN useradd -m -u 1000 user # 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 \ SYSTEM=spaces # Install miniconda RUN mkdir -p /home/user/conda ENV CONDA_DIR /home/user/conda RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && \ /bin/bash ~/miniconda.sh -b -p /home/user/conda # Put conda in path so we can use conda activate ENV PATH=$CONDA_DIR/bin:$PATH # Activate RUN conda init bash RUN . /home/user/conda/bin/activate # Install dependencies RUN conda create -n pose python=3.8 RUN conda activate pose RUN pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --index-url https://download.pytorch.org/whl/cu118 RUN pip install -r /code/requirements.txt RUN conda install -c conda-forge cudatoolkit-dev -y ENV CUDA_HOME=$CONDA_PREFIX/pkgs/cuda-toolkit/ RUN pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable" RUN wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors -P /code/pretrained_models RUN wget https://huggingface.co/stabilityai/sdxl-vae/resolve/main/sdxl_vae.safetensors -P /code/pretrained_models # 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 ["python", "app.py"]