Skip to content

Commit 09e4268

Browse files
committed
TOFIX: packages in image
Signed-off-by: Evan Lezar <[email protected]>
1 parent fce56f9 commit 09e4268

File tree

1 file changed

+50
-0
lines changed

1 file changed

+50
-0
lines changed

deployments/container/Dockerfile.ubi8

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,59 @@ COPY . .
4747
# and not `cmd`.
4848
RUN GOPATH=/artifacts go install -ldflags="-s -w -X 'main.Version=${VERSION}'" ./tools/...
4949

50+
FROM nvidia/cuda:12.5.0-base-ubi8 AS packaging
51+
52+
ARG ARTIFACTS_ROOT
53+
COPY ${ARTIFACTS_ROOT} /artifacts/packages/
54+
55+
WORKDIR /artifacts/packages
56+
57+
# build-args are added to the manifest.txt file below.
58+
ARG PACKAGE_DIST
59+
ARG PACKAGE_VERSION
60+
ARG GIT_BRANCH
61+
ARG GIT_COMMIT
62+
ARG GIT_COMMIT_SHORT
63+
ARG SOURCE_DATE_EPOCH
64+
ARG VERSION
65+
66+
# Create a manifest.txt file with the absolute paths of all deb and rpm packages in the container
67+
RUN echo "#IMAGE_EPOCH=$(date '+%s')" > /artifacts/manifest.txt && \
68+
env | sed 's/^/#/g' >> /artifacts/manifest.txt && \
69+
find /artifacts/packages -iname '*.deb' -o -iname '*.rpm' >> /artifacts/manifest.txt
70+
71+
RUN mkdir /licenses && mv /NGC-DL-CONTAINER-LICENSE /licenses/NGC-DL-CONTAINER-LICENSE
72+
73+
74+
FROM nvidia/cuda:12.5.0-base-ubi8 AS rpmpackages
75+
RUN dnf install -y cpio
76+
77+
ARG TARGETARCH
78+
ARG PACKAGE_DIST_RPM=centos7
79+
ENV PACKAGE_ARCH ${TARGETARCH}
80+
81+
WORKDIR /tmp
82+
COPY --from=packaging /artifacts/packages/${PACKAGE_DIST_RPM}/* /tmp/rpm-packages/
83+
84+
RUN PACKAGE_ARCH=${PACKAGE_ARCH/amd64/x86_64} \
85+
for p in $(ls /tmp/rpm-packages/${PACKAGE_ARCH}/*.rpm); do rpm2cpio $p | cpio -idmv -D /artifacts/rpm/; done
86+
87+
FROM nvidia/cuda:12.5.0-base-ubuntu20.04 AS debpackages
88+
89+
ARG TARGETARCH
90+
ARG PACKAGE_DIST_DEB=ubuntu18.04
91+
ENV PACKAGE_ARCH ${TARGETARCH}
92+
93+
WORKDIR /tmp
94+
COPY --from=packaging /artifacts/packages/${PACKAGE_DIST_DEB}/* /tmp/deb-packages/
95+
96+
RUN for p in $(ls /tmp/deb-packages/${PACKAGE_ARCH}/*.deb); do dpkg-deb -xv $p /artifacts/deb/; done
5097

5198
FROM nvidia/cuda:12.5.0-base-ubi8
5299

100+
COPY --from=rpmpackages /artifacts/rpm /artifacts/rpm
101+
COPY --from=debpackages /artifacts/deb /artifacts/deb
102+
53103
ENV NVIDIA_DISABLE_REQUIRE="true"
54104
ENV NVIDIA_VISIBLE_DEVICES=void
55105
ENV NVIDIA_DRIVER_CAPABILITIES=utility

0 commit comments

Comments
 (0)