| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:5601f441718b0d192d73394b35fd07675342837ec9089ddd52dd1dc0de79630e in / |
| CMD ["/bin/bash"] |
| ENV NVARCH=x86_64 |
| ENV NVIDIA_REQUIRE_CUDA=cuda>=12.6 brand=unknown,driver>=470,driver<471 brand=grid,driver>=470,driver<471 brand=tesla,driver>=470,driver<471 brand=nvidia,driver>=470,driver<471 brand=quadro,driver>=470,driver<471 brand=quadrortx,driver>=470,driver<471 brand=nvidiartx,driver>=470,driver<471 brand=vapps,driver>=470,driver<471 brand=vpc,driver>=470,driver<471 brand=vcs,driver>=470,driver<471 brand=vws,driver>=470,driver<471 brand=cloudgaming,driver>=470,driver<471 brand=unknown,driver>=535,driver<536 brand=grid,driver>=535,driver<536 brand=tesla,driver>=535,driver<536 brand=nvidia,driver>=535,driver<536 brand=quadro,driver>=535,driver<536 brand=quadrortx,driver>=535,driver<536 brand=nvidiartx,driver>=535,driver<536 brand=vapps,driver>=535,driver<536 brand=vpc,driver>=535,driver<536 brand=vcs,driver>=535,driver<536 brand=vws,driver>=535,driver<536 brand=cloudgaming,driver>=535,driver<536 brand=unknown,driver>=550,driver<551 brand=grid,driver>=550,driver<551 brand=tesla,driver>=550,driver<551 brand=nvidia,driver>=550,driver<551 brand=quadro,driver>=550,driver<551 brand=quadrortx,driver>=550,driver<551 brand=nvidiartx,driver>=550,driver<551 brand=vapps,driver>=550,driver<551 brand=vpc,driver>=550,driver<551 brand=vcs,driver>=550,driver<551 brand=vws,driver>=550,driver<551 brand=cloudgaming,driver>=550,driver<551 |
| ENV NV_CUDA_CUDART_VERSION=12.6.37-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 -fsSL https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/${NVARCH}/3bf863cc.pub | apt-key add - && echo "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/${NVARCH} /" > /etc/apt/sources.list.d/cuda.list && apt-get purge --autoremove -y curl && rm -rf /var/lib/apt/lists/* # buildkit |
| ENV CUDA_VERSION=12.6.0 |
| RUN |1 TARGETARCH=amd64 /bin/sh -c apt-get update && apt-get install -y --no-install-recommends cuda-cudart-12-6=${NV_CUDA_CUDART_VERSION} cuda-compat-12-6 && 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.6.0-1 |
| ENV NV_NVTX_VERSION=12.6.37-1 |
| ENV NV_LIBNPP_VERSION=12.3.1.23-1 |
| ENV NV_LIBNPP_PACKAGE=libnpp-12-6=12.3.1.23-1 |
| ENV NV_LIBCUSPARSE_VERSION=12.5.2.23-1 |
| ENV NV_LIBCUBLAS_PACKAGE_NAME=libcublas-12-6 |
| ENV NV_LIBCUBLAS_VERSION=12.6.0.22-1 |
| ENV NV_LIBCUBLAS_PACKAGE=libcublas-12-6=12.6.0.22-1 |
| ENV NV_LIBNCCL_PACKAGE_NAME=libnccl2 |
| ENV NV_LIBNCCL_PACKAGE_VERSION=2.22.3-1 |
| ENV NCCL_VERSION=2.22.3-1 |
| ENV NV_LIBNCCL_PACKAGE=libnccl2=2.22.3-1+cuda12.6 |
| 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-6=${NV_CUDA_LIB_VERSION} ${NV_LIBNPP_PACKAGE} cuda-nvtx-12-6=${NV_NVTX_VERSION} libcusparse-12-6=${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 NV_CUDA_LIB_VERSION=12.6.0-1 |
| ENV NV_CUDA_CUDART_DEV_VERSION=12.6.37-1 |
| ENV NV_NVML_DEV_VERSION=12.6.37-1 |
| ENV NV_LIBCUSPARSE_DEV_VERSION=12.5.2.23-1 |
| ENV NV_LIBNPP_DEV_VERSION=12.3.1.23-1 |
| ENV NV_LIBNPP_DEV_PACKAGE=libnpp-dev-12-6=12.3.1.23-1 |
| ENV NV_LIBCUBLAS_DEV_VERSION=12.6.0.22-1 |
| ENV NV_LIBCUBLAS_DEV_PACKAGE_NAME=libcublas-dev-12-6 |
| ENV NV_LIBCUBLAS_DEV_PACKAGE=libcublas-dev-12-6=12.6.0.22-1 |
| ENV NV_CUDA_NSIGHT_COMPUTE_VERSION=12.6.0-1 |
| ENV NV_CUDA_NSIGHT_COMPUTE_DEV_PACKAGE=cuda-nsight-compute-12-6=12.6.0-1 |
| ENV NV_NVPROF_VERSION=12.6.37-1 |
| ENV NV_NVPROF_DEV_PACKAGE=cuda-nvprof-12-6=12.6.37-1 |
| ENV NV_LIBNCCL_DEV_PACKAGE_NAME=libnccl-dev |
| ENV NV_LIBNCCL_DEV_PACKAGE_VERSION=2.22.3-1 |
| ENV NCCL_VERSION=2.22.3-1 |
| ENV NV_LIBNCCL_DEV_PACKAGE=libnccl-dev=2.22.3-1+cuda12.6 |
| 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-cudart-dev-12-6=${NV_CUDA_CUDART_DEV_VERSION} cuda-command-line-tools-12-6=${NV_CUDA_LIB_VERSION} cuda-minimal-build-12-6=${NV_CUDA_LIB_VERSION} cuda-libraries-dev-12-6=${NV_CUDA_LIB_VERSION} cuda-nvml-dev-12-6=${NV_NVML_DEV_VERSION} ${NV_NVPROF_DEV_PACKAGE} ${NV_LIBNPP_DEV_PACKAGE} libcusparse-dev-12-6=${NV_LIBCUSPARSE_DEV_VERSION} ${NV_LIBCUBLAS_DEV_PACKAGE} ${NV_LIBNCCL_DEV_PACKAGE} ${NV_CUDA_NSIGHT_COMPUTE_DEV_PACKAGE} && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/sh -c apt-mark hold ${NV_LIBCUBLAS_DEV_PACKAGE_NAME} ${NV_LIBNCCL_DEV_PACKAGE_NAME} # buildkit |
| ENV LIBRARY_PATH=/usr/local/cuda/lib64/stubs |
| ENV DEBIAN_FRONTEND=noninteractive |
| RUN /bin/sh -c apt-get update && apt-get install -y build-essential tar curl zip unzip pkg-config git cmake m4 ninja-build gfortran gperf autoconf autoconf-archive automake libtool pkg-config python3 python3-pip python3-setuptools python3-jinja2 python3-msgpack libcap-dev libxmu-dev libxi-dev libgl-dev libx11-dev libxft-dev libxtst-dev libxext-dev libwayland-dev libxkbcommon-dev libglu1-mesa-dev libxrandr-dev libxinerama-dev libxcursor-dev libpango1.0-dev libatk1.0-dev libcairo2-dev libext2fs-dev libjpeg-dev libpng-dev libtiff-dev libexif-dev libgmp-dev libmpfr-dev libgflags-dev libatlas-base-dev libsuitesparse-dev libcap-dev libdbus-1-dev bison libgdal-dev libgtest-dev && rm -rf /var/lib/apt/lists/* # buildkit |
| WORKDIR /opt |
| RUN /bin/sh -c git clone https://github.com/microsoft/vcpkg.git && ./vcpkg/bootstrap-vcpkg.sh # buildkit |
| ENV VCPKG_ROOT=/opt/vcpkg |
| ENV PATH=/opt/vcpkg:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| WORKDIR /workspace |
| COPY . . # buildkit |
| ENV CMAKE_BUILD_DIR=cmake_build_amd64 |
| ENV VCPKG_DOWNLOADS=/vcpkg-downloads |
| RUN /bin/sh -c cmake -B ${CMAKE_BUILD_DIR} -S . -DCMAKE_INSTALL_PREFIX=install -DCMAKE_TOOLCHAIN_FILE=${VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake -DVCPKG_MANIFEST_DIR=. -DVCPKG_OVERLAY_PORTS=.vcpkg/ports -DREALM_WITH_TESTS=ON -DREALM_WITH_TORCH=OFF -G Ninja && cmake --build ${CMAKE_BUILD_DIR} --target install --parallel $(nproc) # buildkit |
| RUN /bin/sh -c mkdir -p /tmp/realm # buildkit |
| ENV REALM_WORKSPACE=/tmp/realm |
| ENV REALM_IP=0.0.0.0 |
| ENV REALM_PORT=1304 |
| ENTRYPOINT ["sh" "-c" "exec /workspace/cmake_build_amd64/realm_server --workspace \"$REALM_WORKSPACE\" --ip \"$REALM_IP\" --port $REALM_PORT"] |