diff --git a/codeserver/ubi9-python-3.12/Dockerfile.konflux.cpu b/codeserver/ubi9-python-3.12/Dockerfile.konflux.cpu index e697046e7b..1c42e29184 100644 --- a/codeserver/ubi9-python-3.12/Dockerfile.konflux.cpu +++ b/codeserver/ubi9-python-3.12/Dockerfile.konflux.cpu @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# cpu-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cpu-base WORKDIR /opt/app-root/bin @@ -34,7 +39,7 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc #################### # codeserver # #################### -FROM base AS codeserver +FROM cpu-base AS codeserver ARG TARGETOS TARGETARCH diff --git a/jupyter/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu b/jupyter/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu index d22e9a73bb..dfd6b76e5c 100644 --- a/jupyter/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu +++ b/jupyter/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu @@ -1,3 +1,8 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + ###################################################### # mongocli-builder (build stage only, not published) # ###################################################### @@ -11,10 +16,10 @@ RUN unzip ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}.zip RUN cd ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}/ && \ CGO_ENABLED=1 GOOS=linux go build -a -tags strictfipsruntime -o /tmp/mongocli ./cmd/mongocli/ -######################## -# base # -######################## -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +#################### +# cpu-base # +#################### +FROM ${BASE_IMAGE} AS cpu-base WORKDIR /opt/app-root/bin @@ -46,7 +51,7 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc #################### # jupyter-minimal # #################### -FROM base AS jupyter-minimal +FROM cpu-base AS jupyter-minimal ARG JUPYTER_REUSABLE_UTILS=jupyter/utils ARG MINIMAL_SOURCE_CODE=jupyter/minimal/ubi9-python-3.12 diff --git a/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu b/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu index 8611ec0dc6..69631cae1d 100644 --- a/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu +++ b/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu @@ -1,3 +1,8 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + ############################ # Stage 1: PDF Tool Build # ############################ @@ -17,9 +22,9 @@ RUN ./install_texlive.sh RUN ./install_pandoc.sh #################### -# base # +# cpu-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cpu-base WORKDIR /opt/app-root/bin @@ -51,7 +56,7 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc #################### # jupyter-minimal # #################### -FROM base AS jupyter-minimal +FROM cpu-base AS jupyter-minimal ARG JUPYTER_REUSABLE_UTILS=jupyter/utils ARG MINIMAL_SOURCE_CODE=jupyter/minimal/ubi9-python-3.12 diff --git a/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cuda b/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cuda index f1a11ff976..9daa8ca578 100644 --- a/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cuda +++ b/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.cuda @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# cuda-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cuda-base WORKDIR /opt/app-root/bin @@ -30,105 +35,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -#################### -# cuda-base # -#################### -FROM base AS cuda-base-amd64 -ENV NVARCH=x86_64 - -FROM base AS cuda-base-arm64 -ENV NVARCH=sbsa - -FROM cuda-base-${TARGETARCH} AS cuda-base - -ARG TARGETARCH - -ARG CUDA_SOURCE_CODE=cuda - -# Install CUDA base from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/base/Dockerfile -USER 0 -WORKDIR /opt/app-root/bin - -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.77-1 - -COPY ${CUDA_SOURCE_CODE}/cuda.repo-${TARGETARCH} /etc/yum.repos.d/cuda.repo -COPY ${CUDA_SOURCE_CODE}/NGC-DL-CONTAINER-LICENSE / - -RUN NVIDIA_GPGKEY_SUM=d0664fbbdb8c32356d45de36c5984617217b2d0bef41b93ccecd326ba3b80c87 && \ - curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel9/${NVARCH}/D42D0685.pub | sed '/^Version/d' > /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \ - echo "$NVIDIA_GPGKEY_SUM /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA" | sha256sum -c --strict - - -ENV CUDA_VERSION=12.6.3 - -# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a -RUN dnf upgrade -y && dnf install -y \ - cuda-cudart-12-6-${NV_CUDA_CUDART_VERSION} \ - cuda-compat-12-6 \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# nvidia-docker 1.0 -RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ - echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf - -ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} -ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 - -# nvidia-container-runtime -ENV NVIDIA_VISIBLE_DEVICES=all -ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -# Install CUDA runtime from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/Dockerfile -ENV NV_CUDA_LIB_VERSION=12.6.3-1 -ENV NV_NVTX_VERSION=12.6.77-1 -ENV NV_LIBNPP_VERSION=12.3.1.54-1 -ENV NV_LIBNPP_PACKAGE=libnpp-12-6-${NV_LIBNPP_VERSION} -ENV NV_LIBCUBLAS_VERSION=12.6.4.1-1 -ENV NV_LIBNCCL_PACKAGE_NAME=libnccl -ENV NV_LIBNCCL_PACKAGE_VERSION=2.23.4-1 -ENV NV_LIBNCCL_VERSION=2.23.4 -ENV NCCL_VERSION=2.23.4 -ENV NV_LIBNCCL_PACKAGE=${NV_LIBNCCL_PACKAGE_NAME}-${NV_LIBNCCL_PACKAGE_VERSION}+cuda12.6 - -RUN dnf install -y \ - cuda-libraries-12-6-${NV_CUDA_LIB_VERSION} \ - cuda-nvtx-12-6-${NV_NVTX_VERSION} \ - ${NV_LIBNPP_PACKAGE} \ - libcublas-12-6-${NV_LIBCUBLAS_VERSION} \ - ${NV_LIBNCCL_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install devel tools - -RUN dnf install -y \ - make \ - findutils \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install CUDA cudnn9 from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/cudnn/Dockerfile -ENV NV_CUDNN_VERSION=9.5.1.17-1 -ENV NV_CUDNN_PACKAGE=libcudnn9-cuda-12-${NV_CUDNN_VERSION} - -LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}" - -RUN dnf install -y \ - ${NV_CUDNN_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Set this flag so that libraries can find the location of CUDA -ENV XLA_FLAGS=--xla_gpu_cuda_data_dir=/usr/local/cuda - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################### # cuda-jupyter-minimal # ######################### diff --git a/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.rocm b/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.rocm index 0ea966696a..7a4be554e4 100644 --- a/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.rocm +++ b/jupyter/minimal/ubi9-python-3.12/Dockerfile.konflux.rocm @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# rocm-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS rocm-base WORKDIR /opt/app-root/bin @@ -30,40 +35,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -######################## -# rocm-base # -######################## -FROM base AS rocm-base - -USER 0 -WORKDIR /opt/app-root/bin - -# Please keep in sync with ROCm/python3.12 dependent images -ARG ROCM_VERSION=6.2.4 -ARG AMDGPU_VERSION=6.2.4 - -# Install the ROCm rpms -# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete -# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages -# so we are only installing meta packages of rocm -# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models -RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \ - echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \ - echo "baseurl=https://repo.radeon.com/rocm/rhel9/$ROCM_VERSION/main" >> /etc/yum.repos.d/rocm.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/rocm.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/rocm.repo && \ - echo "[amdgpu]" > /etc/yum.repos.d/amdgpu.repo && \ - echo "name=amdgpu" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \ - dnf install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \ - dnf clean all && rm -rf /var/cache/yum - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################## # rocm-jupyter-minimal # ######################## diff --git a/jupyter/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda b/jupyter/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda index ce8e06918b..2b9c1e7643 100644 --- a/jupyter/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda +++ b/jupyter/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda @@ -1,3 +1,8 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + ###################################################### # mongocli-builder (build stage only, not published) # ###################################################### @@ -12,9 +17,9 @@ RUN cd ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}/ && \ CGO_ENABLED=1 GOOS=linux go build -a -tags strictfipsruntime -o /tmp/mongocli ./cmd/mongocli/ #################### -# base # +# cuda-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cuda-base WORKDIR /opt/app-root/bin @@ -43,105 +48,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -#################### -# cuda-base # -#################### -FROM base AS cuda-base-amd64 -ENV NVARCH=x86_64 - -FROM base AS cuda-base-arm64 -ENV NVARCH=sbsa - -FROM cuda-base-${TARGETARCH} AS cuda-base - -ARG TARGETARCH - -ARG CUDA_SOURCE_CODE=cuda - -# Install CUDA base from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/base/Dockerfile -USER 0 -WORKDIR /opt/app-root/bin - -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.77-1 - -COPY ${CUDA_SOURCE_CODE}/cuda.repo-${TARGETARCH} /etc/yum.repos.d/cuda.repo -COPY ${CUDA_SOURCE_CODE}/NGC-DL-CONTAINER-LICENSE / - -RUN NVIDIA_GPGKEY_SUM=d0664fbbdb8c32356d45de36c5984617217b2d0bef41b93ccecd326ba3b80c87 && \ - curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel9/${NVARCH}/D42D0685.pub | sed '/^Version/d' > /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \ - echo "$NVIDIA_GPGKEY_SUM /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA" | sha256sum -c --strict - - -ENV CUDA_VERSION=12.6.3 - -# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a -RUN dnf upgrade -y && dnf install -y \ - cuda-cudart-12-6-${NV_CUDA_CUDART_VERSION} \ - cuda-compat-12-6 \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# nvidia-docker 1.0 -RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ - echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf - -ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} -ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 - -# nvidia-container-runtime -ENV NVIDIA_VISIBLE_DEVICES=all -ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -# Install CUDA runtime from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/Dockerfile -ENV NV_CUDA_LIB_VERSION=12.6.3-1 -ENV NV_NVTX_VERSION=12.6.77-1 -ENV NV_LIBNPP_VERSION=12.3.1.54-1 -ENV NV_LIBNPP_PACKAGE=libnpp-12-6-${NV_LIBNPP_VERSION} -ENV NV_LIBCUBLAS_VERSION=12.6.4.1-1 -ENV NV_LIBNCCL_PACKAGE_NAME=libnccl -ENV NV_LIBNCCL_PACKAGE_VERSION=2.23.4-1 -ENV NV_LIBNCCL_VERSION=2.23.4 -ENV NCCL_VERSION=2.23.4 -ENV NV_LIBNCCL_PACKAGE=${NV_LIBNCCL_PACKAGE_NAME}-${NV_LIBNCCL_PACKAGE_VERSION}+cuda12.6 - -RUN dnf install -y \ - cuda-libraries-12-6-${NV_CUDA_LIB_VERSION} \ - cuda-nvtx-12-6-${NV_NVTX_VERSION} \ - ${NV_LIBNPP_PACKAGE} \ - libcublas-12-6-${NV_LIBCUBLAS_VERSION} \ - ${NV_LIBNCCL_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install devel tools - -RUN dnf install -y \ - make \ - findutils \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install CUDA cudnn9 from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/cudnn/Dockerfile -ENV NV_CUDNN_VERSION=9.5.1.17-1 -ENV NV_CUDNN_PACKAGE=libcudnn9-cuda-12-${NV_CUDNN_VERSION} - -LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}" - -RUN dnf install -y \ - ${NV_CUDNN_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Set this flag so that libraries can find the location of CUDA -ENV XLA_FLAGS=--xla_gpu_cuda_data_dir=/usr/local/cuda - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################### # cuda-jupyter-minimal # ######################### diff --git a/jupyter/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda b/jupyter/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda index 640daf688f..04fa67420c 100644 --- a/jupyter/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda +++ b/jupyter/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda @@ -1,3 +1,8 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + ###################################################### # mongocli-builder (build stage only, not published) # ###################################################### @@ -12,9 +17,9 @@ RUN cd ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}/ && \ CGO_ENABLED=1 GOOS=linux go build -a -tags strictfipsruntime -o /tmp/mongocli ./cmd/mongocli/ #################### -# base # +# cuda-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cuda-base WORKDIR /opt/app-root/bin @@ -43,105 +48,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -#################### -# cuda-base # -#################### -FROM base AS cuda-base-amd64 -ENV NVARCH=x86_64 - -FROM base AS cuda-base-arm64 -ENV NVARCH=sbsa - -FROM cuda-base-${TARGETARCH} AS cuda-base - -ARG TARGETARCH - -ARG CUDA_SOURCE_CODE=cuda - -# Install CUDA base from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/base/Dockerfile -USER 0 -WORKDIR /opt/app-root/bin - -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.77-1 - -COPY ${CUDA_SOURCE_CODE}/cuda.repo-${TARGETARCH} /etc/yum.repos.d/cuda.repo -COPY ${CUDA_SOURCE_CODE}/NGC-DL-CONTAINER-LICENSE / - -RUN NVIDIA_GPGKEY_SUM=d0664fbbdb8c32356d45de36c5984617217b2d0bef41b93ccecd326ba3b80c87 && \ - curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel9/${NVARCH}/D42D0685.pub | sed '/^Version/d' > /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \ - echo "$NVIDIA_GPGKEY_SUM /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA" | sha256sum -c --strict - - -ENV CUDA_VERSION=12.6.3 - -# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a -RUN dnf upgrade -y && dnf install -y \ - cuda-cudart-12-6-${NV_CUDA_CUDART_VERSION} \ - cuda-compat-12-6 \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# nvidia-docker 1.0 -RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ - echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf - -ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} -ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 - -# nvidia-container-runtime -ENV NVIDIA_VISIBLE_DEVICES=all -ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -# Install CUDA runtime from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/Dockerfile -ENV NV_CUDA_LIB_VERSION=12.6.3-1 -ENV NV_NVTX_VERSION=12.6.77-1 -ENV NV_LIBNPP_VERSION=12.3.1.54-1 -ENV NV_LIBNPP_PACKAGE=libnpp-12-6-${NV_LIBNPP_VERSION} -ENV NV_LIBCUBLAS_VERSION=12.6.4.1-1 -ENV NV_LIBNCCL_PACKAGE_NAME=libnccl -ENV NV_LIBNCCL_PACKAGE_VERSION=2.23.4-1 -ENV NV_LIBNCCL_VERSION=2.23.4 -ENV NCCL_VERSION=2.23.4 -ENV NV_LIBNCCL_PACKAGE=${NV_LIBNCCL_PACKAGE_NAME}-${NV_LIBNCCL_PACKAGE_VERSION}+cuda12.6 - -RUN dnf install -y \ - cuda-libraries-12-6-${NV_CUDA_LIB_VERSION} \ - cuda-nvtx-12-6-${NV_NVTX_VERSION} \ - ${NV_LIBNPP_PACKAGE} \ - libcublas-12-6-${NV_LIBCUBLAS_VERSION} \ - ${NV_LIBNCCL_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install devel tools - -RUN dnf install -y \ - make \ - findutils \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install CUDA cudnn9 from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/cudnn/Dockerfile -ENV NV_CUDNN_VERSION=9.5.1.17-1 -ENV NV_CUDNN_PACKAGE=libcudnn9-cuda-12-${NV_CUDNN_VERSION} - -LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}" - -RUN dnf install -y \ - ${NV_CUDNN_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Set this flag so that libraries can find the location of CUDA -ENV XLA_FLAGS=--xla_gpu_cuda_data_dir=/usr/local/cuda - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################### # cuda-jupyter-minimal # ######################### diff --git a/jupyter/rocm/pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm b/jupyter/rocm/pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm index 9c57635300..29e452e298 100644 --- a/jupyter/rocm/pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm +++ b/jupyter/rocm/pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm @@ -1,3 +1,8 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + ###################################################### # mongocli-builder (build stage only, not published) # ###################################################### @@ -12,9 +17,9 @@ RUN cd ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}/ && \ CGO_ENABLED=1 GOOS=linux go build -a -tags strictfipsruntime -o /tmp/mongocli ./cmd/mongocli/ #################### -# base # +# rocm-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS rocm-base WORKDIR /opt/app-root/bin @@ -43,40 +48,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -######################## -# rocm-base # -######################## -FROM base AS rocm-base - -USER 0 -WORKDIR /opt/app-root/bin - -# Please keep in sync with ROCm/python3.12 dependent images -ARG ROCM_VERSION=6.2.4 -ARG AMDGPU_VERSION=6.2.4 - -# Install the ROCm rpms -# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete -# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages -# so we are only installing meta packages of rocm -# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models -RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \ - echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \ - echo "baseurl=https://repo.radeon.com/rocm/rhel9/$ROCM_VERSION/main" >> /etc/yum.repos.d/rocm.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/rocm.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/rocm.repo && \ - echo "[amdgpu]" > /etc/yum.repos.d/amdgpu.repo && \ - echo "name=amdgpu" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \ - dnf install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \ - dnf clean all && rm -rf /var/cache/yum - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################## # rocm-jupyter-minimal # ######################## @@ -137,7 +108,6 @@ COPY ${DATASCIENCE_SOURCE_CODE}/setup-elyra.sh ${DATASCIENCE_SOURCE_CODE}/utils WORKDIR /opt/app-root/src - ######################## # rocm-jupyter-pytorch # ######################## diff --git a/jupyter/rocm/tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm b/jupyter/rocm/tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm index 026683b81d..736ae828fc 100644 --- a/jupyter/rocm/tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm +++ b/jupyter/rocm/tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm @@ -1,3 +1,8 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + ###################################################### # mongocli-builder (build stage only, not published) # ###################################################### @@ -12,9 +17,9 @@ RUN cd ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}/ && \ CGO_ENABLED=1 GOOS=linux go build -a -tags strictfipsruntime -o /tmp/mongocli ./cmd/mongocli/ #################### -# base # +# rocm-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS rocm-base WORKDIR /opt/app-root/bin @@ -43,51 +48,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -############# -# rocm-base # -############# -FROM base AS rocm-base - -USER 0 -WORKDIR /opt/app-root/bin - -# Please keep in sync with ROCm/python3.12 dependent images -ARG ROCM_VERSION=6.4.3 -ARG AMDGPU_VERSION=6.4.3 - -# Install the ROCm rpms -# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete -# docs: https://rocm.docs.amd.com/projects/install-on-linux/en/latest/install/install-methods/package-manager/package-manager-rhel.html#registering-rocm-repositories -# Note: Based on 6.4 above new package mivisionx is a pre-requistes, which bring in more dependent packages -# so we are only installing meta packages of rocm -# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models -RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \ - echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \ - echo "baseurl=https://repo.radeon.com/rocm/el9/${ROCM_VERSION}/main" >> /etc/yum.repos.d/rocm.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/rocm.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/rocm.repo && \ - echo "[amdgpu]" > /etc/yum.repos.d/amdgpu.repo && \ - echo "name=amdgpu" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "baseurl=https://repo.radeon.com/amdgpu/${AMDGPU_VERSION}/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \ - dnf install -y 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm' && \ - dnf clean all && dnf makecache && \ - dnf install -y rocm-developer-tools rocm-ml-sdk rocm-openmp-sdk rocm-utils && \ - dnf clean all && rm -rf /var/cache/dnf - -# https://rocm.docs.amd.com/projects/install-on-linux/en/latest/install/post-install.html#configure-rocm-shared-objects -RUN tee --append /etc/ld.so.conf.d/rocm.conf < /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \ - echo "$NVIDIA_GPGKEY_SUM /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA" | sha256sum -c --strict - - -ENV CUDA_VERSION=12.6.3 - -# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a -RUN dnf upgrade -y && dnf install -y \ - cuda-cudart-12-6-${NV_CUDA_CUDART_VERSION} \ - cuda-compat-12-6 \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# nvidia-docker 1.0 -RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ - echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf - -ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} -ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 - -# nvidia-container-runtime -ENV NVIDIA_VISIBLE_DEVICES=all -ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -# Install CUDA runtime from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/Dockerfile -ENV NV_CUDA_LIB_VERSION=12.6.3-1 -ENV NV_NVTX_VERSION=12.6.77-1 -ENV NV_LIBNPP_VERSION=12.3.1.54-1 -ENV NV_LIBNPP_PACKAGE=libnpp-12-6-${NV_LIBNPP_VERSION} -ENV NV_LIBCUBLAS_VERSION=12.6.4.1-1 -ENV NV_LIBNCCL_PACKAGE_NAME=libnccl -ENV NV_LIBNCCL_PACKAGE_VERSION=2.23.4-1 -ENV NV_LIBNCCL_VERSION=2.23.4 -ENV NCCL_VERSION=2.23.4 -ENV NV_LIBNCCL_PACKAGE=${NV_LIBNCCL_PACKAGE_NAME}-${NV_LIBNCCL_PACKAGE_VERSION}+cuda12.6 - -RUN dnf install -y \ - cuda-libraries-12-6-${NV_CUDA_LIB_VERSION} \ - cuda-nvtx-12-6-${NV_NVTX_VERSION} \ - ${NV_LIBNPP_PACKAGE} \ - libcublas-12-6-${NV_LIBCUBLAS_VERSION} \ - ${NV_LIBNCCL_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install devel tools - -RUN dnf install -y \ - make \ - findutils \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install CUDA cudnn9 from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/cudnn/Dockerfile -ENV NV_CUDNN_VERSION=9.5.1.17-1 -ENV NV_CUDNN_PACKAGE=libcudnn9-cuda-12-${NV_CUDNN_VERSION} - -LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}" - -RUN dnf install -y \ - ${NV_CUDNN_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Set this flag so that libraries can find the location of CUDA -ENV XLA_FLAGS=--xla_gpu_cuda_data_dir=/usr/local/cuda - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################### # cuda-jupyter-minimal # ######################### diff --git a/jupyter/trustyai/ubi9-python-3.12/Dockerfile.konflux.cpu b/jupyter/trustyai/ubi9-python-3.12/Dockerfile.konflux.cpu index 7d9bb5a5e7..14e56fefe3 100644 --- a/jupyter/trustyai/ubi9-python-3.12/Dockerfile.konflux.cpu +++ b/jupyter/trustyai/ubi9-python-3.12/Dockerfile.konflux.cpu @@ -1,3 +1,8 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + ###################################################### # mongocli-builder (build stage only, not published) # ###################################################### @@ -11,10 +16,10 @@ RUN unzip ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}.zip RUN cd ./mongodb-cli-mongocli-v${MONGOCLI_VERSION}/ && \ CGO_ENABLED=1 GOOS=linux go build -a -tags strictfipsruntime -o /tmp/mongocli ./cmd/mongocli/ -######################## -# base # -######################## -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +#################### +# cpu-base # +#################### +FROM ${BASE_IMAGE} AS cpu-base WORKDIR /opt/app-root/bin @@ -46,7 +51,7 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc #################### # jupyter-minimal # #################### -FROM base AS jupyter-minimal +FROM cpu-base AS jupyter-minimal ARG JUPYTER_REUSABLE_UTILS=jupyter/utils ARG MINIMAL_SOURCE_CODE=jupyter/minimal/ubi9-python-3.12 diff --git a/runtimes/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu b/runtimes/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu index 5f203a146b..e4d8896d91 100644 --- a/runtimes/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu +++ b/runtimes/datascience/ubi9-python-3.12/Dockerfile.konflux.cpu @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# cpu-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cpu-base WORKDIR /opt/app-root/bin @@ -33,7 +38,7 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc ####################### # runtime-datascience # ####################### -FROM base AS runtime-datascience +FROM cpu-base AS runtime-datascience ARG DATASCIENCE_SOURCE_CODE=runtimes/datascience/ubi9-python-3.12 diff --git a/runtimes/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu b/runtimes/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu index 4a5de8fce3..8650126b17 100644 --- a/runtimes/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu +++ b/runtimes/minimal/ubi9-python-3.12/Dockerfile.konflux.cpu @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# cpu-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cpu-base WORKDIR /opt/app-root/bin @@ -40,7 +45,7 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc #################### # runtime-minimal # #################### -FROM base AS runtime-minimal +FROM cpu-base AS runtime-minimal ARG MINIMAL_SOURCE_CODE=runtimes/minimal/ubi9-python-3.12 diff --git a/runtimes/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda b/runtimes/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda index c920224af0..80ec669b2a 100644 --- a/runtimes/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda +++ b/runtimes/pytorch+llmcompressor/ubi9-python-3.12/Dockerfile.konflux.cuda @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# cuda-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cuda-base WORKDIR /opt/app-root/bin @@ -30,105 +35,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -#################### -# cuda-base # -#################### -FROM base AS cuda-base-amd64 -ENV NVARCH=x86_64 - -FROM base AS cuda-base-arm64 -ENV NVARCH=sbsa - -FROM cuda-base-${TARGETARCH} AS cuda-base - -ARG TARGETARCH - -ARG CUDA_SOURCE_CODE=cuda - -# Install CUDA base from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/base/Dockerfile -USER 0 -WORKDIR /opt/app-root/bin - -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.77-1 - -COPY ${CUDA_SOURCE_CODE}/cuda.repo-${TARGETARCH} /etc/yum.repos.d/cuda.repo -COPY ${CUDA_SOURCE_CODE}/NGC-DL-CONTAINER-LICENSE / - -RUN NVIDIA_GPGKEY_SUM=d0664fbbdb8c32356d45de36c5984617217b2d0bef41b93ccecd326ba3b80c87 && \ - curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel9/${NVARCH}/D42D0685.pub | sed '/^Version/d' > /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \ - echo "$NVIDIA_GPGKEY_SUM /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA" | sha256sum -c --strict - - -ENV CUDA_VERSION=12.6.3 - -# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a -RUN dnf upgrade -y && dnf install -y \ - cuda-cudart-12-6-${NV_CUDA_CUDART_VERSION} \ - cuda-compat-12-6 \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# nvidia-docker 1.0 -RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ - echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf - -ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} -ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 - -# nvidia-container-runtime -ENV NVIDIA_VISIBLE_DEVICES=all -ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -# Install CUDA runtime from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/Dockerfile -ENV NV_CUDA_LIB_VERSION=12.6.3-1 -ENV NV_NVTX_VERSION=12.6.77-1 -ENV NV_LIBNPP_VERSION=12.3.1.54-1 -ENV NV_LIBNPP_PACKAGE=libnpp-12-6-${NV_LIBNPP_VERSION} -ENV NV_LIBCUBLAS_VERSION=12.6.4.1-1 -ENV NV_LIBNCCL_PACKAGE_NAME=libnccl -ENV NV_LIBNCCL_PACKAGE_VERSION=2.23.4-1 -ENV NV_LIBNCCL_VERSION=2.23.4 -ENV NCCL_VERSION=2.23.4 -ENV NV_LIBNCCL_PACKAGE=${NV_LIBNCCL_PACKAGE_NAME}-${NV_LIBNCCL_PACKAGE_VERSION}+cuda12.6 - -RUN dnf install -y \ - cuda-libraries-12-6-${NV_CUDA_LIB_VERSION} \ - cuda-nvtx-12-6-${NV_NVTX_VERSION} \ - ${NV_LIBNPP_PACKAGE} \ - libcublas-12-6-${NV_LIBCUBLAS_VERSION} \ - ${NV_LIBNCCL_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install devel tools - -RUN dnf install -y \ - make \ - findutils \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install CUDA cudnn9 from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/cudnn/Dockerfile -ENV NV_CUDNN_VERSION=9.5.1.17-1 -ENV NV_CUDNN_PACKAGE=libcudnn9-cuda-12-${NV_CUDNN_VERSION} - -LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}" - -RUN dnf install -y \ - ${NV_CUDNN_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Set this flag so that libraries can find the location of CUDA -ENV XLA_FLAGS=--xla_gpu_cuda_data_dir=/usr/local/cuda - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################### # cuda-runtime-pytorch # ######################### diff --git a/runtimes/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda b/runtimes/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda index 4eaabf7ae0..a2340f9594 100644 --- a/runtimes/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda +++ b/runtimes/pytorch/ubi9-python-3.12/Dockerfile.konflux.cuda @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# cuda-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cuda-base WORKDIR /opt/app-root/bin @@ -30,105 +35,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -#################### -# cuda-base # -#################### -FROM base AS cuda-base-amd64 -ENV NVARCH=x86_64 - -FROM base AS cuda-base-arm64 -ENV NVARCH=sbsa - -FROM cuda-base-${TARGETARCH} AS cuda-base - -ARG TARGETARCH - -ARG CUDA_SOURCE_CODE=cuda - -# Install CUDA base from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/base/Dockerfile -USER 0 -WORKDIR /opt/app-root/bin - -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.77-1 - -COPY ${CUDA_SOURCE_CODE}/cuda.repo-${TARGETARCH} /etc/yum.repos.d/cuda.repo -COPY ${CUDA_SOURCE_CODE}/NGC-DL-CONTAINER-LICENSE / - -RUN NVIDIA_GPGKEY_SUM=d0664fbbdb8c32356d45de36c5984617217b2d0bef41b93ccecd326ba3b80c87 && \ - curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel9/${NVARCH}/D42D0685.pub | sed '/^Version/d' > /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \ - echo "$NVIDIA_GPGKEY_SUM /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA" | sha256sum -c --strict - - -ENV CUDA_VERSION=12.6.3 - -# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a -RUN dnf upgrade -y && dnf install -y \ - cuda-cudart-12-6-${NV_CUDA_CUDART_VERSION} \ - cuda-compat-12-6 \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# nvidia-docker 1.0 -RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ - echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf - -ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} -ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 - -# nvidia-container-runtime -ENV NVIDIA_VISIBLE_DEVICES=all -ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -# Install CUDA runtime from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/Dockerfile -ENV NV_CUDA_LIB_VERSION=12.6.3-1 -ENV NV_NVTX_VERSION=12.6.77-1 -ENV NV_LIBNPP_VERSION=12.3.1.54-1 -ENV NV_LIBNPP_PACKAGE=libnpp-12-6-${NV_LIBNPP_VERSION} -ENV NV_LIBCUBLAS_VERSION=12.6.4.1-1 -ENV NV_LIBNCCL_PACKAGE_NAME=libnccl -ENV NV_LIBNCCL_PACKAGE_VERSION=2.23.4-1 -ENV NV_LIBNCCL_VERSION=2.23.4 -ENV NCCL_VERSION=2.23.4 -ENV NV_LIBNCCL_PACKAGE=${NV_LIBNCCL_PACKAGE_NAME}-${NV_LIBNCCL_PACKAGE_VERSION}+cuda12.6 - -RUN dnf install -y \ - cuda-libraries-12-6-${NV_CUDA_LIB_VERSION} \ - cuda-nvtx-12-6-${NV_NVTX_VERSION} \ - ${NV_LIBNPP_PACKAGE} \ - libcublas-12-6-${NV_LIBCUBLAS_VERSION} \ - ${NV_LIBNCCL_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install devel tools - -RUN dnf install -y \ - make \ - findutils \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install CUDA cudnn9 from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/cudnn/Dockerfile -ENV NV_CUDNN_VERSION=9.5.1.17-1 -ENV NV_CUDNN_PACKAGE=libcudnn9-cuda-12-${NV_CUDNN_VERSION} - -LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}" - -RUN dnf install -y \ - ${NV_CUDNN_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Set this flag so that libraries can find the location of CUDA -ENV XLA_FLAGS=--xla_gpu_cuda_data_dir=/usr/local/cuda - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################### # cuda-runtime-pytorch # ######################### diff --git a/runtimes/rocm-pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm b/runtimes/rocm-pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm index f9d38a6838..5867436d91 100644 --- a/runtimes/rocm-pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm +++ b/runtimes/rocm-pytorch/ubi9-python-3.12/Dockerfile.konflux.rocm @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# rocm-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS rocm-base WORKDIR /opt/app-root/bin @@ -30,40 +35,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -############# -# rocm-base # -############# -FROM base AS rocm-base - -USER 0 -WORKDIR /opt/app-root/bin - -# Please keep in sync with ROCm/python3.12 dependent images -ARG ROCM_VERSION=6.2.4 -ARG AMDGPU_VERSION=6.2.4 - -# Install the ROCm rpms -# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete -# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages -# so we are only installing meta packages of rocm -# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models -RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \ - echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \ - echo "baseurl=https://repo.radeon.com/rocm/rhel9/$ROCM_VERSION/main" >> /etc/yum.repos.d/rocm.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/rocm.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/rocm.repo && \ - echo "[amdgpu]" > /etc/yum.repos.d/amdgpu.repo && \ - echo "name=amdgpu" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \ - dnf install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \ - dnf clean all && rm -rf /var/cache/yum - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ######################## # rocm-runtime-pytorch # ######################## diff --git a/runtimes/rocm-tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm b/runtimes/rocm-tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm index f489dfa71c..e09ad00d34 100644 --- a/runtimes/rocm-tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm +++ b/runtimes/rocm-tensorflow/ubi9-python-3.12/Dockerfile.konflux.rocm @@ -1,7 +1,12 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# rocm-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS rocm-base WORKDIR /opt/app-root/bin @@ -30,40 +35,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -############# -# rocm-base # -############# -FROM base AS rocm-base - -USER 0 -WORKDIR /opt/app-root/bin - -# Please keep in sync with ROCm/python3.12 dependent images -ARG ROCM_VERSION=6.2.4 -ARG AMDGPU_VERSION=6.2.4 - -# Install the ROCm rpms -# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete -# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages -# Only the ROCm meta-packages are installed -# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models -RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \ - echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \ - echo "baseurl=https://repo.radeon.com/rocm/rhel9/$ROCM_VERSION/main" >> /etc/yum.repos.d/rocm.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/rocm.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/rocm.repo && \ - echo "[amdgpu]" > /etc/yum.repos.d/amdgpu.repo && \ - echo "name=amdgpu" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \ - echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \ - dnf install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \ - dnf clean all && rm -rf /var/cache/yum - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ########################### # rocm-runtime-tensorflow # ########################### diff --git a/runtimes/tensorflow/ubi9-python-3.12/Dockerfile.konflux.cuda b/runtimes/tensorflow/ubi9-python-3.12/Dockerfile.konflux.cuda index b34b7c673c..852d6a37ce 100644 --- a/runtimes/tensorflow/ubi9-python-3.12/Dockerfile.konflux.cuda +++ b/runtimes/tensorflow/ubi9-python-3.12/Dockerfile.konflux.cuda @@ -1,7 +1,14 @@ +######################### +# configuration args # +######################### +ARG BASE_IMAGE + #################### -# base # +# cuda-base # #################### -FROM registry.access.redhat.com/ubi9/python-312:latest AS base +FROM ${BASE_IMAGE} AS cuda-base + +ARG TARGETARCH WORKDIR /opt/app-root/bin @@ -30,110 +37,6 @@ RUN curl -L https://mirror.openshift.com/pub/openshift-v4/$(uname -m)/clients/oc rm -f /tmp/openshift-client-linux.tar.gz # Install the oc client end -#################### -# cuda-base # -#################### -FROM base AS cuda-base-amd64 -ENV NVARCH=x86_64 - -FROM base AS cuda-base-arm64 -ENV NVARCH=sbsa - -FROM cuda-base-${TARGETARCH} AS cuda-base - -ARG TARGETARCH - -ARG CUDA_SOURCE_CODE=cuda - -# Install CUDA base from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/base/Dockerfile -USER 0 -WORKDIR /opt/app-root/bin - -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.77-1 - -COPY ${CUDA_SOURCE_CODE}/cuda.repo-${TARGETARCH} /etc/yum.repos.d/cuda.repo -COPY ${CUDA_SOURCE_CODE}/NGC-DL-CONTAINER-LICENSE / - -RUN NVIDIA_GPGKEY_SUM=d0664fbbdb8c32356d45de36c5984617217b2d0bef41b93ccecd326ba3b80c87 && \ - curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/rhel9/${NVARCH}/D42D0685.pub | sed '/^Version/d' > /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA && \ - echo "$NVIDIA_GPGKEY_SUM /etc/pki/rpm-gpg/RPM-GPG-KEY-NVIDIA" | sha256sum -c --strict - - -ENV CUDA_VERSION=12.6.3 - -# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a -RUN dnf upgrade -y && dnf install -y \ - cuda-cudart-12-6-${NV_CUDA_CUDART_VERSION} \ - cuda-compat-12-6 \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# nvidia-docker 1.0 -RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ - echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf - -ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} -ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 - -# nvidia-container-runtime -ENV NVIDIA_VISIBLE_DEVICES=all -ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -# Install CUDA runtime from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/Dockerfile -ENV NV_CUDA_LIB_VERSION=12.6.3-1 -ENV NV_NVTX_VERSION=12.6.77-1 -ENV NV_LIBNPP_VERSION=12.3.1.54-1 -ENV NV_LIBNPP_PACKAGE=libnpp-12-6-${NV_LIBNPP_VERSION} -ENV NV_LIBCUBLAS_VERSION=12.6.4.1-1 -ENV NV_LIBNCCL_PACKAGE_NAME=libnccl -ENV NV_LIBNCCL_PACKAGE_VERSION=2.23.4-1 -ENV NV_LIBNCCL_VERSION=2.23.4 -ENV NCCL_VERSION=2.23.4 -ENV NV_LIBNCCL_PACKAGE=${NV_LIBNCCL_PACKAGE_NAME}-${NV_LIBNCCL_PACKAGE_VERSION}+cuda12.6 - -RUN dnf install -y \ - cuda-libraries-12-6-${NV_CUDA_LIB_VERSION} \ - cuda-nvtx-12-6-${NV_NVTX_VERSION} \ - ${NV_LIBNPP_PACKAGE} \ - libcublas-12-6-${NV_LIBCUBLAS_VERSION} \ - ${NV_LIBNCCL_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install devel tools - -RUN dnf install -y \ - make \ - findutils \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Install CUDA cudnn9 from: -# https://gitlab.com/nvidia/container-images/cuda/-/blob/master/dist/12.6.3/ubi9/runtime/cudnn/Dockerfile -ENV NV_CUDNN_VERSION=9.5.1.17-1 -ENV NV_CUDNN_PACKAGE=libcudnn9-cuda-12-${NV_CUDNN_VERSION} - -LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}" - -RUN dnf install -y \ - ${NV_CUDNN_PACKAGE} \ - && dnf clean all \ - && rm -rf /var/cache/yum/* - -# Set this flag so that libraries can find the location of CUDA -ENV XLA_FLAGS=--xla_gpu_cuda_data_dir=/usr/local/cuda - -# hdf5 is needed for h5py -RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm && \ - dnf install -y hdf5-devel && \ - dnf clean all - -# Restore notebook user workspace -USER 1001 -WORKDIR /opt/app-root/src - ############################ # cuda-runtime-tensorflow # ############################