File Dockerfile of Package nv-driver-container
#!BuildTag: nvidia-driver-container:%%NV_DRIVER_VERSION%%
#!BuildTag: nvidia-driver-container:%%NV_DRIVER_VERSION%%-opensuse-leap%OS_VERSION_ID_SP%
#!BuildTag: nvidia-driver-container:%%NV_DRIVER_VERSION%%-sles%OS_VERSION_ID_SP%
##!BuildTag: nvidia-driver-container:%%NV_DRIVER_VERSION%%-sl-micro%OS_VERSION_ID_SP%
ARG SLES_VERSION
# This container contains no CUDA software
# FROM nvcr.io/nvidia/cuda:12.6.0-base-ubi9 as license
# TODO: vgpu software
#FROM registry.suse.com/bci/bci-base:$SLES_VERSION
FROM opensuse/leap:15.6
#FROM suse/sle15:15.6
#FROM sle-micro-6.0-base:latest
ARG DRIVER_ARCH=%ARCH%
ARG DRIVER_REPO
ARG CUDA_REPO_FINGERPRINT=610C7B14E068A878070DA4E99CD0A493D42D0685
ARG NV_DRIVER_VERSION=%%NV_DRIVER_VERSION%%
ARG RUN_DIR=/run/nvidia
ENV DRIVER_VERSION=$NV_DRIVER_VERSION
ENV DRIVER_ARCH=$DRIVER_ARCH
ENV DRIVER_REPO=$DRIVER_REPO
ENV CUDA_URL=https://developer.download.nvidia.com/compute/cuda/repos/
ENV DRIVER_PACKAGE=nvidia-open-driver-G06-signed-cuda-kmp
ENV RUN_DIR=${RUN_DIR}
ENV CUDA_REPO_FINGERPRINT=${CUDA_REPO_FINGERPRINT}
#TODO: vgpu environment
COPY nvidia-driver /usr/local/bin/nvidia-driver
# TODO vgpu directory
RUN [ -n "$CUDA_REPO_FINGERPRINT" ] || exit 1; \
zypper --non-interactive install -y curl awk tar util-linux-systemd dracut perl-Bootloader \
suse-module-tools; \
zypper clean -a; \
chmod 0755 /usr/local/bin/nvidia-driver; \
mkdir /drivers; \
echo -en "[CUDA]\nenabled=1\nautorefresh=0\nbaseurl=${CUDA_URL}/sles15/x86_64\n" > /etc/zypp/repos.d/CUDA.repo
ADD README.md drivers/
#TODO: COPY --from-build vgpu-util /usr/local/bin
WORKDIR /drivers
LABEL io.k8s.display-name="NVIDIA Driver Container"
LABEL name="NVIDIA Driver Container"
LABEL vendor="NVIDIA"
LABEL version="${DRIVER_VERSION}"
LABEL release="N/A"
LABEL summary="Provision the NVIDIA driver through containers"
LABEL description="See summary"
## Add NGC DL license from the CUDA image
#COPY --from=license /NGC-DL-CONTAINER-LICENSE /licenses/NGC-DL-CONTAINER-LICENSE
ENTRYPOINT ["nvidia-driver", "init"]