This is an automated email from the ASF dual-hosted git repository.
weichu pushed a commit to branch v1.9.x
in repository https://gitbox.apache.org/repos/asf/incubator-mxnet.git
The following commit(s) were added to refs/heads/v1.9.x by this push:
new 9fe13b555c [v1.9.x] Fix CD pipeline for python docker (#21049)
9fe13b555c is described below
commit 9fe13b555ce7ccba686caab751b782f9e7606aed
Author: waytrue17 <[email protected]>
AuthorDate: Tue May 31 19:55:14 2022 -0700
[v1.9.x] Fix CD pipeline for python docker (#21049)
* pass arg to dockerfile
* fix LD path for cuda files
* update gpu base image in ci
Co-authored-by: Paweł Głomski <[email protected]>
Co-authored-by: Wei Chu <[email protected]>
---
cd/python/docker/Dockerfile | 10 +++++++++-
cd/python/docker/python_images.sh | 9 ++++++++-
ci/docker/Dockerfile.build.ubuntu_build_cuda | 6 +-----
ci/docker/Dockerfile.build.ubuntu_gpu_cu100 | 7 +------
ci/docker/Dockerfile.build.ubuntu_gpu_cu101 | 7 +------
ci/docker/Dockerfile.build.ubuntu_gpu_cu102 | 7 +------
6 files changed, 21 insertions(+), 25 deletions(-)
diff --git a/cd/python/docker/Dockerfile b/cd/python/docker/Dockerfile
index 16d20832eb..adcf3211ef 100644
--- a/cd/python/docker/Dockerfile
+++ b/cd/python/docker/Dockerfile
@@ -23,6 +23,14 @@
ARG BASE_IMAGE
FROM ${BASE_IMAGE}
+ARG CUDA_VARIANT
+
+# manually update cuda repo key:
https://developer.nvidia.com/blog/updating-the-cuda-linux-gpg-repository-key/
+# remove this after nvidia updates the base images with new keys
+RUN if [ "$CUDA_VARIANT" != "false" ] ; then \
+ apt-key adv --fetch-keys
https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/3bf863cc.pub;
\
+ fi
+
RUN apt-get update && \
apt-get install -y software-properties-common && \
add-apt-repository -y ppa:deadsnakes/ppa && \
@@ -41,7 +49,7 @@ RUN if [ "$MXNET_VARIANT" = "aarch64_cpu" ] ; then \
tar -xvf arm-performance-libraries_21.0_Ubuntu-18.04_gcc-8.2.tar && \
arm-performance-libraries_21.0_Ubuntu-18.04_gcc-8.2/arm-performance-libraries_21.0_Ubuntu-18.04.sh
-a; \
fi
-ENV LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/arm/armpl_21.0_gcc-8.2/lib
+ENV
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/arm/armpl_21.0_gcc-8.2/lib:/usr/local/cuda-${CUDA_VARIANT}/compat
ARG MXNET_COMMIT_ID
ENV MXNET_COMMIT_ID=${MXNET_COMMIT_ID}
diff --git a/cd/python/docker/python_images.sh
b/cd/python/docker/python_images.sh
index 41bf0d2120..4d9cf131c5 100755
--- a/cd/python/docker/python_images.sh
+++ b/cd/python/docker/python_images.sh
@@ -44,8 +44,15 @@ if [ ! -z "${RELEASE_PUBLIC_ECR_REPOSITORY}" ]; then
fi
build() {
+ # use this flag to set LD_LIBRARY_PATH for cuda files
+ if [[ $mxnet_variant = cu* ]]; then
+ cuda_variant=${mxnet_variant:2:-1}.${mxnet_variant: -1}
+ else
+ cuda_variant="false"
+ fi
+
# NOTE: Ensure the correct context root is passed in when building -
Dockerfile expects ./wheel_build
- docker build -t "${image_name}" --build-arg BASE_IMAGE="${base_image}"
--build-arg MXNET_COMMIT_ID=${GIT_COMMIT} --build-arg
MXNET_VARIANT=${mxnet_variant} -f ${resources_path}/Dockerfile ./wheel_build
+ docker build -t "${image_name}" --build-arg BASE_IMAGE="${base_image}"
--build-arg MXNET_COMMIT_ID=${GIT_COMMIT} --build-arg
MXNET_VARIANT=${mxnet_variant} --build-arg CUDA_VARIANT=${cuda_variant} -f
${resources_path}/Dockerfile ./wheel_build
}
test() {
diff --git a/ci/docker/Dockerfile.build.ubuntu_build_cuda
b/ci/docker/Dockerfile.build.ubuntu_build_cuda
index 7fa89f1e7f..f5e11100e5 100644
--- a/ci/docker/Dockerfile.build.ubuntu_build_cuda
+++ b/ci/docker/Dockerfile.build.ubuntu_build_cuda
@@ -21,7 +21,7 @@
# package generation, requiring the actual CUDA library to be
# present
-FROM nvidia/cuda:10.1-devel-ubuntu18.04
+FROM nvidia/cuda:10.1-cudnn7-devel-ubuntu18.04
WORKDIR /work/deps
@@ -44,10 +44,6 @@ RUN /work/ubuntu_clang.sh
COPY install/ubuntu_binutils.sh /work/
RUN /work/ubuntu_binutils.sh
-ENV CUDNN_VERSION=7.6.5.32
-COPY install/ubuntu_cudnn.sh /work/
-RUN /work/ubuntu_cudnn.sh
-
# Special case because the CPP-Package requires the CUDA runtime libs
# and not only stubs (which are provided by the base image)
COPY install/ubuntu_nvidia.sh /work/
diff --git a/ci/docker/Dockerfile.build.ubuntu_gpu_cu100
b/ci/docker/Dockerfile.build.ubuntu_gpu_cu100
index c10e76ec79..b48dfa598e 100644
--- a/ci/docker/Dockerfile.build.ubuntu_gpu_cu100
+++ b/ci/docker/Dockerfile.build.ubuntu_gpu_cu100
@@ -18,7 +18,7 @@
#
# Dockerfile to run MXNet on Ubuntu 18.04 for GPU
-FROM nvidia/cuda:10.0-devel-ubuntu18.04
+FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04
WORKDIR /work/deps
@@ -64,11 +64,6 @@ RUN /work/ubuntu_docs.sh
COPY install/ubuntu_tutorials.sh /work/
RUN /work/ubuntu_tutorials.sh
-ENV CUDA_VERSION=10.0.130
-ENV CUDNN_VERSION=7.6.5.32
-COPY install/ubuntu_cudnn.sh /work/
-RUN /work/ubuntu_cudnn.sh
-
# Always last
ARG USER_ID=0
ARG GROUP_ID=0
diff --git a/ci/docker/Dockerfile.build.ubuntu_gpu_cu101
b/ci/docker/Dockerfile.build.ubuntu_gpu_cu101
index ef07948894..5f038b437d 100644
--- a/ci/docker/Dockerfile.build.ubuntu_gpu_cu101
+++ b/ci/docker/Dockerfile.build.ubuntu_gpu_cu101
@@ -18,7 +18,7 @@
#
# Dockerfile to run MXNet on Ubuntu 18.04 for GPU
-FROM nvidia/cuda:10.1-devel-ubuntu18.04
+FROM nvidia/cuda:10.1-cudnn7-devel-ubuntu18.04
WORKDIR /work/deps
@@ -64,11 +64,6 @@ RUN /work/ubuntu_docs.sh
COPY install/ubuntu_tutorials.sh /work/
RUN /work/ubuntu_tutorials.sh
-ENV CUDA_VERSION=10.1.105
-ENV CUDNN_VERSION=7.6.5.32
-COPY install/ubuntu_cudnn.sh /work/
-RUN /work/ubuntu_cudnn.sh
-
# Always last
ARG USER_ID=0
ARG GROUP_ID=0
diff --git a/ci/docker/Dockerfile.build.ubuntu_gpu_cu102
b/ci/docker/Dockerfile.build.ubuntu_gpu_cu102
index b096306040..21dd41fdbd 100644
--- a/ci/docker/Dockerfile.build.ubuntu_gpu_cu102
+++ b/ci/docker/Dockerfile.build.ubuntu_gpu_cu102
@@ -18,7 +18,7 @@
#
# Dockerfile to run MXNet on Ubuntu 18.04 for GPU
-FROM nvidia/cuda:10.2-devel-ubuntu18.04
+FROM nvidia/cuda:10.2-cudnn8-devel-ubuntu18.04
WORKDIR /work/deps
@@ -64,11 +64,6 @@ RUN /work/ubuntu_docs.sh
COPY install/ubuntu_tutorials.sh /work/
RUN /work/ubuntu_tutorials.sh
-ENV CUDA_VERSION=10.2.89
-ENV CUDNN_VERSION=8.0.4.30
-COPY install/ubuntu_cudnn.sh /work/
-RUN /work/ubuntu_cudnn.sh
-
# Always last
ARG USER_ID=0
ARG GROUP_ID=0