Spaces:
Running
on
Zero
Running
on
Zero
| # Read the doc: https://huggingface.co/docs/hub/spaces-sdks-docker | |
| # you will also find guides on how best to write your Dockerfile | |
| FROM nvidia/cuda:12.1.0-devel-ubuntu22.04 | |
| ARG USER_NAME=hzh | |
| ARG GROUP_NAME=vast | |
| ARG UID=1000 | |
| ARG GID=1000 | |
| # Set compute capability for nerfacc and tiny-cuda-nn | |
| # See https://developer.nvidia.com/cuda-gpus and limit number to speed-up build | |
| ENV TORCH_CUDA_ARCH_LIST="6.0 6.1 7.0 7.5 8.0 8.6 8.9 9.0+PTX" | |
| ENV TCNN_CUDA_ARCHITECTURES=90;89;86;80;75;70;61;60 | |
| # Speed-up build for RTX 30xx | |
| # ENV TORCH_CUDA_ARCH_LIST="8.6" | |
| # ENV TCNN_CUDA_ARCHITECTURES=86 | |
| # Speed-up build for RTX 40xx | |
| # ENV TORCH_CUDA_ARCH_LIST="8.9" | |
| # ENV TCNN_CUDA_ARCHITECTURES=89 | |
| ENV CUDA_HOME=/usr/local/cuda | |
| ENV PATH=${CUDA_HOME}/bin:/home/${USER_NAME}/.local/bin:${PATH} | |
| ENV LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH} | |
| ENV LIBRARY_PATH=${CUDA_HOME}/lib64/stubs:${LIBRARY_PATH} | |
| # apt install by root user | |
| RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ | |
| build-essential \ | |
| curl \ | |
| cmake \ | |
| git \ | |
| git-lfs \ | |
| ffmpeg \ | |
| libegl1-mesa-dev \ | |
| libgl1-mesa-dev \ | |
| libgles2-mesa-dev \ | |
| libglib2.0-0 \ | |
| libgl1-mesa-glx \ | |
| libsm6 \ | |
| libxext6 \ | |
| libxrender1 \ | |
| python-is-python3 \ | |
| python3.10-dev \ | |
| python3-pip \ | |
| rsync \ | |
| wget \ | |
| && rm -rf /var/lib/apt/lists/* | |
| RUN groupadd -g ${GID} ${GROUP_NAME} \ | |
| && useradd -ms /bin/sh -u ${UID} -g ${GID} ${USER_NAME} | |
| USER ${USER_NAME} | |
| WORKDIR /app | |
| RUN pip install torch==2.2.1 torchvision==0.17.1 torchaudio==2.2.1 --index-url https://download.pytorch.org/whl/cu121 | |
| RUN pip install --no-cache-dir datasets "huggingface-hub>=0.19" "hf-transfer>=0.1.4" "protobuf<4" "click<8.1" "pydantic~=1.0" | |
| RUN pip install --no-cache-dir gradio[oauth]==4.44.1 "uvicorn>=0.14.0" spaces | |
| COPY --chown=${USER_NAME} ./requirements.txt requirements.txt | |
| RUN pip install --no-cache-dir --upgrade -r requirements.txt | |
| COPY --chown=${USER_NAME} . /app | |
| CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"] | |