Skip to content

Commit 38a800d

Browse files
committed
jetbrains bot thinks we should do all this
1 parent 9a709de commit 38a800d

File tree

6 files changed

+101
-36
lines changed

6 files changed

+101
-36
lines changed

ci/cached-builds/gha_lvm_overlay.sh

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ set -Eeuo pipefail
88
# https://github.com/easimon/maximize-build-space/blob/master/action.yml
99

1010
# root_reserve_mb=2048 was running out of disk space building cuda images
11-
root_reserve_mb=4096
11+
root_reserve_mb=2048
1212
temp_reserve_mb=100
13-
swap_size_mb=4096
13+
swap_size_mb=2048
1414

1515
build_mount_path="${HOME}/.local/share/containers"
1616
build_mount_path_ownership="runner:runner"

jupyter/minimal/ubi9-python-3.11/Dockerfile.rocm

+19-6
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ ARG AMDGPU_VERSION=6.2.4
3838
# Install the ROCm rpms
3939
# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete
4040
# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages
41-
# so we are only installing meta packages of rocm
41+
# so we are only installing meta packages of rocm
4242
# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models
4343
RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
4444
echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \
@@ -50,8 +50,21 @@ RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
5050
echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \
5151
echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \
5252
echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \
53-
yum install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \
54-
yum clean all && rm -rf /var/cache/yum
53+
# Install ROCm packages in separate steps to better manage disk space
54+
# First install core ROCm components
55+
yum install -y --setopt=install_weak_deps=False rocm-core rocm-hip-runtime rocm-hip-sdk && \
56+
yum clean all && rm -rf /var/cache/yum && \
57+
# Then install ML components
58+
yum install -y --setopt=install_weak_deps=False rocm-ml-sdk && \
59+
yum clean all && rm -rf /var/cache/yum && \
60+
# Finally install remaining components
61+
yum install -y --setopt=install_weak_deps=False rocm-opencl-sdk rocm-utils && \
62+
yum clean all && rm -rf /var/cache/yum && \
63+
# Remove unnecessary files to save space
64+
find /opt/rocm-$ROCM_VERSION -name "*.a" -delete && \
65+
find /opt/rocm-$ROCM_VERSION -name "*.o" -delete && \
66+
find /opt/rocm-$ROCM_VERSION -type d -name "samples" -exec rm -rf {} + 2>/dev/null || true && \
67+
find /opt/rocm-$ROCM_VERSION -type d -name "doc" -exec rm -rf {} + 2>/dev/null || true
5568

5669
# Restore notebook user workspace
5770
USER 1001
@@ -60,7 +73,7 @@ WORKDIR /opt/app-root/src
6073
########################
6174
# rocm-jupyter-minimal #
6275
########################
63-
FROM rocm-base AS rocm-jupyter-minimal
76+
FROM rocm-base AS rocm-jupyter-minimal
6477

6578
ARG JUPYTER_REUSABLE_UTILS=jupyter/utils
6679
ARG MINIMAL_SOURCE_CODE=jupyter/minimal/ubi9-python-3.11
@@ -94,7 +107,7 @@ RUN echo "Installing softwares and packages" && \
94107
fix-permissions /opt/app-root -P && \
95108
# Apply JupyterLab addons \
96109
/opt/app-root/bin/utils/addons/apply.sh
97-
110+
98111
WORKDIR /opt/app-root/src
99112

100-
ENTRYPOINT ["start-notebook.sh"]
113+
ENTRYPOINT ["start-notebook.sh"]

jupyter/rocm/pytorch/ubi9-python-3.11/Dockerfile.rocm

+25-12
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ ARG AMDGPU_VERSION=6.2.4
3838
# Install the ROCm rpms
3939
# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete
4040
# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages
41-
# so we are only installing meta packages of rocm
41+
# so we are only installing meta packages of rocm
4242
# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models
4343
RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
4444
echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \
@@ -50,8 +50,21 @@ RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
5050
echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \
5151
echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \
5252
echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \
53-
yum install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \
54-
yum clean all && rm -rf /var/cache/yum
53+
# Install ROCm packages in separate steps to better manage disk space
54+
# First install core ROCm components
55+
yum install -y --setopt=install_weak_deps=False rocm-core rocm-hip-runtime rocm-hip-sdk && \
56+
yum clean all && rm -rf /var/cache/yum && \
57+
# Then install ML components
58+
yum install -y --setopt=install_weak_deps=False rocm-ml-sdk && \
59+
yum clean all && rm -rf /var/cache/yum && \
60+
# Finally install remaining components
61+
yum install -y --setopt=install_weak_deps=False rocm-opencl-sdk rocm-utils && \
62+
yum clean all && rm -rf /var/cache/yum && \
63+
# Remove unnecessary files to save space
64+
find /opt/rocm-$ROCM_VERSION -name "*.a" -delete && \
65+
find /opt/rocm-$ROCM_VERSION -name "*.o" -delete && \
66+
find /opt/rocm-$ROCM_VERSION -type d -name "samples" -exec rm -rf {} + 2>/dev/null || true && \
67+
find /opt/rocm-$ROCM_VERSION -type d -name "doc" -exec rm -rf {} + 2>/dev/null || true
5568

5669
# Restore notebook user workspace
5770
USER 1001
@@ -60,7 +73,7 @@ WORKDIR /opt/app-root/src
6073
########################
6174
# rocm-jupyter-minimal #
6275
########################
63-
FROM rocm-base AS rocm-jupyter-minimal
76+
FROM rocm-base AS rocm-jupyter-minimal
6477

6578
ARG JUPYTER_REUSABLE_UTILS=jupyter/utils
6679
ARG MINIMAL_SOURCE_CODE=jupyter/minimal/ubi9-python-3.11
@@ -70,15 +83,15 @@ WORKDIR /opt/app-root/bin
7083
COPY ${JUPYTER_REUSABLE_UTILS} utils/
7184

7285
COPY ${MINIMAL_SOURCE_CODE}/start-notebook.sh ./
73-
86+
7487
WORKDIR /opt/app-root/src
7588

7689
ENTRYPOINT ["start-notebook.sh"]
7790

7891
############################
7992
# rocm-jupyter-datascience #
8093
############################
81-
FROM rocm-jupyter-minimal AS rocm-jupyter-datascience
94+
FROM rocm-jupyter-minimal AS rocm-jupyter-datascience
8295

8396
ARG DATASCIENCE_SOURCE_CODE=jupyter/datascience/ubi9-python-3.11
8497

@@ -114,7 +127,7 @@ WORKDIR /opt/app-root/src
114127
########################
115128
# rocm-jupyter-pytorch #
116129
########################
117-
FROM rocm-jupyter-datascience AS rocm-jupyter-pytorch
130+
FROM rocm-jupyter-datascience AS rocm-jupyter-pytorch
118131

119132
ARG DATASCIENCE_SOURCE_CODE=jupyter/datascience/ubi9-python-3.11
120133
ARG PYTORCH_SOURCE_CODE=jupyter/rocm/pytorch/ubi9-python-3.11
@@ -135,20 +148,20 @@ COPY ${PYTORCH_SOURCE_CODE}/Pipfile.lock ${PYTORCH_SOURCE_CODE}/de-vendor-torch.
135148

136149
RUN echo "Installing softwares and packages" && \
137150
micropipenv install && \
138-
rm -f ./Pipfile.lock && \
151+
rm -f ./Pipfile.lock && \
139152
# setup path for runtime configuration
140153
mkdir /opt/app-root/runtimes && \
141154
# Remove default Elyra runtime-images \
142-
rm /opt/app-root/share/jupyter/metadata/runtime-images/*.json && \
155+
rm /opt/app-root/share/jupyter/metadata/runtime-images/*.json && \
143156
# Replace Notebook's launcher, "(ipykernel)" with Python's version 3.x.y \
144157
sed -i -e "s/Python.*/$(python --version | cut -d '.' -f-2)\",/" /opt/app-root/share/jupyter/kernels/python3/kernel.json && \
145158
# Disable announcement plugin of jupyterlab \
146159
jupyter labextension disable "@jupyterlab/apputils-extension:announcements" && \
147160
# Apply JupyterLab addons \
148-
/opt/app-root/bin/utils/addons/apply.sh && \
161+
/opt/app-root/bin/utils/addons/apply.sh && \
149162
# De-vendor the ROCm libs that are embedded in Pytorch \
150163
./de-vendor-torch.sh && \
151-
rm ./de-vendor-torch.sh && \
164+
rm ./de-vendor-torch.sh && \
152165
# Fix permissions to support pip in Openshift environments \
153166
chmod -R g+w /opt/app-root/lib/python3.11/site-packages && \
154167
fix-permissions /opt/app-root -P
@@ -157,4 +170,4 @@ RUN echo "Installing softwares and packages" && \
157170
# Copy Elyra runtime-images definitions and set the version
158171
COPY ${DATASCIENCE_SOURCE_CODE}/runtime-images/ /opt/app-root/share/jupyter/metadata/runtime-images/
159172

160-
WORKDIR /opt/app-root/src
173+
WORKDIR /opt/app-root/src

jupyter/rocm/tensorflow/ubi9-python-3.11/Dockerfile.rocm

+23-10
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ ARG AMDGPU_VERSION=6.2.4
3838
# Install the ROCm rpms
3939
# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete
4040
# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages
41-
# so we are only installing meta packages of rocm
41+
# so we are only installing meta packages of rocm
4242
# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models
4343
RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
4444
echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \
@@ -50,8 +50,21 @@ RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
5050
echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \
5151
echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \
5252
echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \
53-
yum install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \
54-
yum clean all && rm -rf /var/cache/yum
53+
# Install ROCm packages in separate steps to better manage disk space
54+
# First install core ROCm components
55+
yum install -y --setopt=install_weak_deps=False rocm-core rocm-hip-runtime rocm-hip-sdk && \
56+
yum clean all && rm -rf /var/cache/yum && \
57+
# Then install ML components
58+
yum install -y --setopt=install_weak_deps=False rocm-ml-sdk && \
59+
yum clean all && rm -rf /var/cache/yum && \
60+
# Finally install remaining components
61+
yum install -y --setopt=install_weak_deps=False rocm-opencl-sdk rocm-utils && \
62+
yum clean all && rm -rf /var/cache/yum && \
63+
# Remove unnecessary files to save space
64+
find /opt/rocm-$ROCM_VERSION -name "*.a" -delete && \
65+
find /opt/rocm-$ROCM_VERSION -name "*.o" -delete && \
66+
find /opt/rocm-$ROCM_VERSION -type d -name "samples" -exec rm -rf {} + 2>/dev/null || true && \
67+
find /opt/rocm-$ROCM_VERSION -type d -name "doc" -exec rm -rf {} + 2>/dev/null || true
5568

5669
# Restore notebook user workspace
5770
USER 1001
@@ -60,7 +73,7 @@ WORKDIR /opt/app-root/src
6073
########################
6174
# rocm-jupyter-minimal #
6275
########################
63-
FROM rocm-base AS rocm-jupyter-minimal
76+
FROM rocm-base AS rocm-jupyter-minimal
6477

6578
ARG JUPYTER_REUSABLE_UTILS=jupyter/utils
6679
ARG MINIMAL_SOURCE_CODE=jupyter/minimal/ubi9-python-3.11
@@ -70,15 +83,15 @@ WORKDIR /opt/app-root/bin
7083
COPY ${JUPYTER_REUSABLE_UTILS} utils/
7184

7285
COPY ${MINIMAL_SOURCE_CODE}/start-notebook.sh ./
73-
86+
7487
WORKDIR /opt/app-root/src
7588

7689
ENTRYPOINT ["start-notebook.sh"]
7790

7891
############################
7992
# rocm-jupyter-datascience #
8093
############################
81-
FROM rocm-jupyter-minimal AS rocm-jupyter-datascience
94+
FROM rocm-jupyter-minimal AS rocm-jupyter-datascience
8295

8396
ARG DATASCIENCE_SOURCE_CODE=jupyter/datascience/ubi9-python-3.11
8497

@@ -114,7 +127,7 @@ WORKDIR /opt/app-root/src
114127
###########################
115128
# rocm-jupyter-tensorflow #
116129
###########################
117-
FROM rocm-jupyter-datascience AS rocm-jupyter-tensorflow
130+
FROM rocm-jupyter-datascience AS rocm-jupyter-tensorflow
118131

119132
ARG DATASCIENCE_SOURCE_CODE=jupyter/datascience/ubi9-python-3.11
120133
ARG TENSORFLOW_SOURCE_CODE=jupyter/rocm/tensorflow/ubi9-python-3.11
@@ -135,17 +148,17 @@ COPY ${TENSORFLOW_SOURCE_CODE}/Pipfile.lock ./
135148

136149
RUN echo "Installing softwares and packages" && \
137150
micropipenv install --dev && \
138-
rm -f ./Pipfile.lock && \
151+
rm -f ./Pipfile.lock && \
139152
# setup path for runtime configuration
140153
mkdir /opt/app-root/runtimes && \
141154
# Remove default Elyra runtime-images \
142-
rm /opt/app-root/share/jupyter/metadata/runtime-images/*.json && \
155+
rm /opt/app-root/share/jupyter/metadata/runtime-images/*.json && \
143156
# Replace Notebook's launcher, "(ipykernel)" with Python's version 3.x.y \
144157
sed -i -e "s/Python.*/$(python --version | cut -d '.' -f-2)\",/" /opt/app-root/share/jupyter/kernels/python3/kernel.json && \
145158
# Disable announcement plugin of jupyterlab \
146159
jupyter labextension disable "@jupyterlab/apputils-extension:announcements" && \
147160
# Apply JupyterLab addons \
148-
/opt/app-root/bin/utils/addons/apply.sh && \
161+
/opt/app-root/bin/utils/addons/apply.sh && \
149162
# Fix permissions to support pip in Openshift environments \
150163
chmod -R g+w /opt/app-root/lib/python3.11/site-packages && \
151164
fix-permissions /opt/app-root -P

runtimes/rocm-pytorch/ubi9-python-3.11/Dockerfile.rocm

+16-3
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ ARG AMDGPU_VERSION=6.2.4
3838
# Install the ROCm rpms
3939
# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete
4040
# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages
41-
# so we are only installing meta packages of rocm
41+
# so we are only installing meta packages of rocm
4242
# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models
4343
RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
4444
echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \
@@ -50,8 +50,21 @@ RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
5050
echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \
5151
echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \
5252
echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \
53-
yum install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \
54-
yum clean all && rm -rf /var/cache/yum
53+
# Install ROCm packages in separate steps to better manage disk space
54+
# First install core ROCm components
55+
yum install -y --setopt=install_weak_deps=False rocm-core rocm-hip-runtime rocm-hip-sdk && \
56+
yum clean all && rm -rf /var/cache/yum && \
57+
# Then install ML components
58+
yum install -y --setopt=install_weak_deps=False rocm-ml-sdk && \
59+
yum clean all && rm -rf /var/cache/yum && \
60+
# Finally install remaining components
61+
yum install -y --setopt=install_weak_deps=False rocm-opencl-sdk rocm-utils && \
62+
yum clean all && rm -rf /var/cache/yum && \
63+
# Remove unnecessary files to save space
64+
find /opt/rocm-$ROCM_VERSION -name "*.a" -delete && \
65+
find /opt/rocm-$ROCM_VERSION -name "*.o" -delete && \
66+
find /opt/rocm-$ROCM_VERSION -type d -name "samples" -exec rm -rf {} + 2>/dev/null || true && \
67+
find /opt/rocm-$ROCM_VERSION -type d -name "doc" -exec rm -rf {} + 2>/dev/null || true
5568

5669
# Restore notebook user workspace
5770
USER 1001

runtimes/rocm-tensorflow/ubi9-python-3.11/Dockerfile.rocm

+16-3
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ ARG AMDGPU_VERSION=6.2.4
3838
# Install the ROCm rpms
3939
# ref: https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete
4040
# Note: Based on 6.2 above new package mivisionx is a pre-requistes, which bring in more dependent packages
41-
# so we are only installing meta packages of rocm
41+
# so we are only installing meta packages of rocm
4242
# ref: https://rocm.docs.amd.com/projects/install-on-linux/en/develop/reference/package-manager-integration.html#packages-in-rocm-programming-models
4343
RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
4444
echo "name=ROCm" >> /etc/yum.repos.d/rocm.repo && \
@@ -50,8 +50,21 @@ RUN echo "[ROCm]" > /etc/yum.repos.d/rocm.repo && \
5050
echo "baseurl=https://repo.radeon.com/amdgpu/$AMDGPU_VERSION/rhel/9.4/main/x86_64" >> /etc/yum.repos.d/amdgpu.repo && \
5151
echo "enabled=1" >> /etc/yum.repos.d/amdgpu.repo && \
5252
echo "gpgcheck=0" >> /etc/yum.repos.d/amdgpu.repo && \
53-
yum install -y rocm-developer-tools rocm-ml-sdk rocm-opencl-sdk rocm-openmp-sdk rocm-utils && \
54-
yum clean all && rm -rf /var/cache/yum
53+
# Install ROCm packages in separate steps to better manage disk space
54+
# First install core ROCm components
55+
yum install -y --setopt=install_weak_deps=False rocm-core rocm-hip-runtime rocm-hip-sdk && \
56+
yum clean all && rm -rf /var/cache/yum && \
57+
# Then install ML components
58+
yum install -y --setopt=install_weak_deps=False rocm-ml-sdk && \
59+
yum clean all && rm -rf /var/cache/yum && \
60+
# Finally install remaining components
61+
yum install -y --setopt=install_weak_deps=False rocm-opencl-sdk rocm-utils && \
62+
yum clean all && rm -rf /var/cache/yum && \
63+
# Remove unnecessary files to save space
64+
find /opt/rocm-$ROCM_VERSION -name "*.a" -delete && \
65+
find /opt/rocm-$ROCM_VERSION -name "*.o" -delete && \
66+
find /opt/rocm-$ROCM_VERSION -type d -name "samples" -exec rm -rf {} + 2>/dev/null || true && \
67+
find /opt/rocm-$ROCM_VERSION -type d -name "doc" -exec rm -rf {} + 2>/dev/null || true
5568

5669
# Restore notebook user workspace
5770
USER 1001

0 commit comments

Comments
 (0)