@@ -2,7 +2,8 @@ ARG CUDA_VERSION=notset
22FROM nvcr.io/nvidia/cuda:$CUDA_VERSION-devel-rockylinux8
33ARG CUDA_VERSION
44ARG NCCL_VERSION
5- ARG MINIFORGE_VERSION=25.3.1-0
5+ ARG ARCH=x86_64
6+ ARG MINIFORGE_VERSION=25.11.0-1
67ARG CMAKE_VERSION=4.1.0
78
89SHELL ["/bin/bash", "-c"]
@@ -16,30 +17,33 @@ ENV GOSU_VERSION=1.10
1617
1718# Install all basic requirements
1819RUN \
19- curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/D42D0685.pub | sed '/^Version/d' \
20+ { [ $ARCH = "aarch64" ] && export CUDA_REPO_ARCH="sbsa" || export CUDA_REPO_ARCH="x86_64"; } && \
21+ curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel8/${CUDA_REPO_ARCH}/D42D0685.pub | sed '/^Version/d' \
2022 > /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \
2123 dnf -y update && \
2224 dnf -y install dnf-plugins-core && \
2325 dnf config-manager --set-enabled powertools && \
2426 dnf install -y tar unzip wget xz git which ninja-build gcc-toolset-10-gcc gcc-toolset-10-binutils gcc-toolset-10-gcc-c++ && \
2527 # Miniforge
26- wget -nv -O conda.sh https://github.com/conda-forge/miniforge/releases/download/$MINIFORGE_VERSION/Miniforge3-$MINIFORGE_VERSION-Linux-x86_64 .sh && \
28+ wget -nv -O conda.sh https://github.com/conda-forge/miniforge/releases/download/$MINIFORGE_VERSION/Miniforge3-$MINIFORGE_VERSION-Linux-${ARCH} .sh && \
2729 bash conda.sh -b -p /opt/miniforge && \
2830 /opt/miniforge/bin/python -m pip install awscli && \
2931 # CMake
30- wget -nv -O cmake.sh https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-linux-x86_64 .sh && \
32+ wget -nv -O cmake.sh https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-linux-${ARCH} .sh && \
3133 bash cmake.sh --skip-license --prefix=/usr
3234
3335# NCCL2 (License: https://docs.nvidia.com/deeplearning/sdk/nccl-sla/index.html)
3436RUN \
37+ { [ $ARCH = "aarch64" ] && export CUDA_REPO_ARCH="sbsa" || export CUDA_REPO_ARCH="x86_64"; } && \
3538 export NCCL_VERSION=$NCCL_VERSION && \
36- dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64 /cuda-rhel8.repo && \
39+ dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/${CUDA_REPO_ARCH} /cuda-rhel8.repo && \
3740 dnf -y update && \
3841 dnf install -y libnccl-${NCCL_VERSION}+cuda13.0 libnccl-devel-${NCCL_VERSION}+cuda13.0 libnccl-static-${NCCL_VERSION}+cuda13.0
3942
4043# Install lightweight sudo (not bound to TTY)
4144RUN set -ex; \
42- wget -nv -nc -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-amd64" && \
45+ { [ $ARCH = "aarch64" ] && export GOSU_ARCH="arm64" || export GOSU_ARCH="amd64"; } && \
46+ wget -nv -nc -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-${GOSU_ARCH}" && \
4347 chmod +x /usr/local/bin/gosu && \
4448 gosu nobody true
4549
0 commit comments