| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=22.04 |
| ADD file:63d5ab3ef0aab308c0e71cb67292c5467f60deafa9b0418cbb220affcd078444 in / |
| CMD ["/bin/bash"] |
| ENV NVARCH=x86_64 |
| ENV NVIDIA_REQUIRE_CUDA=cuda>=12.1 brand=tesla,driver>=470,driver<471 brand=unknown,driver>=470,driver<471 brand=nvidia,driver>=470,driver<471 brand=nvidiartx,driver>=470,driver<471 brand=geforce,driver>=470,driver<471 brand=geforcertx,driver>=470,driver<471 brand=quadro,driver>=470,driver<471 brand=quadrortx,driver>=470,driver<471 brand=titan,driver>=470,driver<471 brand=titanrtx,driver>=470,driver<471 brand=tesla,driver>=525,driver<526 brand=unknown,driver>=525,driver<526 brand=nvidia,driver>=525,driver<526 brand=nvidiartx,driver>=525,driver<526 brand=geforce,driver>=525,driver<526 brand=geforcertx,driver>=525,driver<526 brand=quadro,driver>=525,driver<526 brand=quadrortx,driver>=525,driver<526 brand=titan,driver>=525,driver<526 brand=titanrtx,driver>=525,driver<526 |
| ENV NV_CUDA_CUDART_VERSION=12.1.105-1 |
| ENV NV_CUDA_COMPAT_PACKAGE=cuda-compat-12-1 |
| ARG TARGETARCH |
| LABEL maintainer=NVIDIA CORPORATION <cudatools@nvidia.com> |
| RUN |1 TARGETARCH=amd64 /bin/sh -c apt-get update && apt-get install -y --no-install-recommends gnupg2 curl ca-certificates && curl -fsSLO https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/${NVARCH}/cuda-keyring_1.0-1_all.deb && dpkg -i cuda-keyring_1.0-1_all.deb && apt-get purge --autoremove -y curl && rm -rf /var/lib/apt/lists/* # buildkit |
| ENV CUDA_VERSION=12.1.1 |
| RUN |1 TARGETARCH=amd64 /bin/sh -c apt-get update && apt-get install -y --no-install-recommends cuda-cudart-12-1=${NV_CUDA_CUDART_VERSION} ${NV_CUDA_COMPAT_PACKAGE} && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/sh -c echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf # buildkit |
| ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 |
| COPY NGC-DL-CONTAINER-LICENSE / # buildkit |
| ENV NVIDIA_VISIBLE_DEVICES=all |
| ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility |
| ENV NV_CUDA_LIB_VERSION=12.1.1-1 |
| ENV NV_NVTX_VERSION=12.1.105-1 |
| ENV NV_LIBNPP_VERSION=12.1.0.40-1 |
| ENV NV_LIBNPP_PACKAGE=libnpp-12-1=12.1.0.40-1 |
| ENV NV_LIBCUSPARSE_VERSION=12.1.0.106-1 |
| ENV NV_LIBCUBLAS_PACKAGE_NAME=libcublas-12-1 |
| ENV NV_LIBCUBLAS_VERSION=12.1.3.1-1 |
| ENV NV_LIBCUBLAS_PACKAGE=libcublas-12-1=12.1.3.1-1 |
| ENV NV_LIBNCCL_PACKAGE_NAME=libnccl2 |
| ENV NV_LIBNCCL_PACKAGE_VERSION=2.17.1-1 |
| ENV NCCL_VERSION=2.17.1-1 |
| ENV NV_LIBNCCL_PACKAGE=libnccl2=2.17.1-1+cuda12.1 |
| ARG TARGETARCH |
| LABEL maintainer=NVIDIA CORPORATION <cudatools@nvidia.com> |
| RUN |1 TARGETARCH=amd64 /bin/sh -c apt-get update && apt-get install -y --no-install-recommends cuda-libraries-12-1=${NV_CUDA_LIB_VERSION} ${NV_LIBNPP_PACKAGE} cuda-nvtx-12-1=${NV_NVTX_VERSION} libcusparse-12-1=${NV_LIBCUSPARSE_VERSION} ${NV_LIBCUBLAS_PACKAGE} ${NV_LIBNCCL_PACKAGE} && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/sh -c apt-mark hold ${NV_LIBCUBLAS_PACKAGE_NAME} ${NV_LIBNCCL_PACKAGE_NAME} # buildkit |
| COPY entrypoint.d/ /opt/nvidia/entrypoint.d/ # buildkit |
| COPY nvidia_entrypoint.sh /opt/nvidia/ # buildkit |
| ENV NVIDIA_PRODUCT_NAME=CUDA |
| ENTRYPOINT ["/opt/nvidia/nvidia_entrypoint.sh"] |
| ENV DEBIAN_FRONTEND=noninteractive PYTHONUNBUFFERED=1 PYTHONDONTWRITEBYTECODE=1 PIP_NO_CACHE_DIR=1 PIP_DISABLE_PIP_VERSION_CHECK=1 |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends python3 python3-dev python3-venv python3-pip build-essential git curl wget ffmpeg libgl1 libglib2.0-0 libsm6 libxext6 libxrender1 libgomp1 && ln -sf /usr/bin/python3 /usr/bin/python && rm -rf /var/lib/apt/lists/* && apt-get clean # buildkit |
| WORKDIR /app |
| ARG COMFYUI_REF=v0.37.4 |
| RUN |1 COMFYUI_REF=v0.37.4 /bin/sh -c git clone https://github.com/comfyanonymous/ComfyUI.git /app/ComfyUI && git -C /app/ComfyUI checkout --detach "${COMFYUI_REF}" # buildkit |
| WORKDIR /app/ComfyUI |
| RUN |1 COMFYUI_REF=v0.37.4 /bin/sh -c pip install --upgrade pip setuptools wheel && pip install -r requirements.txt && pip install huggingface-hub ultralytics segment-anything opencv-python-headless onnxruntime # buildkit |
| ARG IMPACT_PACK_REF=8.28 |
| ARG IMPACT_SUBPACK_REF=1.3.4 |
| ARG IPADAPTER_REF=a0f451a5113cf9becb0847b92884cb10cbdec0ef |
| ARG CUSTOM_SCRIPTS_REF=609f3afaa74b2f88ef9ce8d939626065e3247469 |
| RUN |5 COMFYUI_REF=v0.37.4 IMPACT_PACK_REF=8.28 IMPACT_SUBPACK_REF=1.3.4 IPADAPTER_REF=a0f451a5113cf9becb0847b92884cb10cbdec0ef CUSTOM_SCRIPTS_REF=609f3afaa74b2f88ef9ce8d939626065e3247469 /bin/sh -c set -eux; cd /app/ComfyUI/custom_nodes; git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack.git && git -C ComfyUI-Impact-Pack checkout --detach "${IMPACT_PACK_REF}"; git clone https://github.com/ltdrdata/ComfyUI-Impact-Subpack.git && git -C ComfyUI-Impact-Subpack checkout --detach "${IMPACT_SUBPACK_REF}"; git clone https://github.com/cubiq/ComfyUI_IPAdapter_plus.git && git -C ComfyUI_IPAdapter_plus checkout --detach "${IPADAPTER_REF}"; git clone https://github.com/pythongosssss/ComfyUI-Custom-Scripts.git && git -C ComfyUI-Custom-Scripts checkout --detach "${CUSTOM_SCRIPTS_REF}"; for d in */; do if [ -f "$d/requirements.txt" ]; then grep -v '^[[:space:]]*git+' "$d/requirements.txt" > /tmp/reqs.txt || true; if [ -s /tmp/reqs.txt ]; then pip install -r /tmp/reqs.txt; fi; fi; done # buildkit |
| COPY entrypoint.sh /app/entrypoint.sh # buildkit |
| COPY install_models.py /app/install_models.py # buildkit |
| COPY smoke_test_nodes.py /app/smoke_test_nodes.py # buildkit |
| RUN |5 COMFYUI_REF=v0.37.4 IMPACT_PACK_REF=8.28 IMPACT_SUBPACK_REF=1.3.4 IPADAPTER_REF=a0f451a5113cf9becb0847b92884cb10cbdec0ef CUSTOM_SCRIPTS_REF=609f3afaa74b2f88ef9ce8d939626065e3247469 /bin/sh -c chmod +x /app/entrypoint.sh # buildkit |
| EXPOSE [8188/tcp] |
| HEALTHCHECK {Test:[CMD-SHELL curl -fsS http://localhost:8188/system_stats | grep -q comfyui_version || exit 1] Interval:30s Timeout:10s StartPeriod:3m0s StartInterval:0s Retries:3} |
| ENTRYPOINT ["/app/entrypoint.sh"] |