This is an automated email from the ASF dual-hosted git repository.
zhouyuan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gluten.git
The following commit(s) were added to refs/heads/main by this push:
new c7de93e1c4 [VL] Refine docker image build to speedup CI jobs(#11835)
c7de93e1c4 is described below
commit c7de93e1c4cd5fa28c30801475368946282184cb
Author: Yuan <[email protected]>
AuthorDate: Thu Jul 30 01:24:50 2026 -0700
[VL] Refine docker image build to speedup CI jobs(#11835)
This patch refines the docker file for gpu image.
switch to use centos9
install cuda-toolkit-13.1
gcc-14 is used
The image size is reduced from ~27GB to ~13GB
The patch also fixed the gcc-12 installation on centos8
The patch also installed spark-41 to CI image to save time on downloading
---------
Signed-off-by: Yuan <[email protected]>
---
dev/docker/Dockerfile.centos8-dynamic-build | 11 +++++++++--
dev/docker/Dockerfile.centos9-dynamic-build | 1 +
dev/docker/cudf/Dockerfile | 21 ++++++++++-----------
3 files changed, 20 insertions(+), 13 deletions(-)
diff --git a/dev/docker/Dockerfile.centos8-dynamic-build
b/dev/docker/Dockerfile.centos8-dynamic-build
index aa3bc39882..59bae2a0cb 100644
--- a/dev/docker/Dockerfile.centos8-dynamic-build
+++ b/dev/docker/Dockerfile.centos8-dynamic-build
@@ -30,7 +30,13 @@ RUN set -ex; \
sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-* ||
true; \
sed -i -e
"s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g"
/etc/yum.repos.d/CentOS-* || true; \
yum update -y && yum install -y epel-release sudo dnf && yum install -y
ccache; \
- dnf install -y --setopt=install_weak_deps=False gcc-toolset-11; \
+ dnf install -y centos-release-stream; \
+ sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-Stream-*
|| true; \
+ sed -i -e
"s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g"
/etc/yum.repos.d/CentOS-Stream-* || true; \
+ dnf swap -y --allowerasing centos-{linux,stream}-repos; \
+ sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-Stream-*
|| true; \
+ sed -i -e
"s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g"
/etc/yum.repos.d/CentOS-Stream-* || true; \
+ dnf install -y --setopt=install_weak_deps=False gcc-toolset-12; \
echo "check_certificate = off" >> ~/.wgetrc; \
yum install -y java-${JAVA_VERSION}-openjdk-devel patch wget git perl; \
mirror_host="https://www.apache.org/dyn/closer.lua"; \
@@ -45,12 +51,13 @@ RUN set -ex; \
./install-spark-resources.sh 3.5; \
./install-spark-resources.sh 3.5-scala2.13; \
./install-spark-resources.sh 4.0; \
+ ./install-spark-resources.sh 4.1; \
ARCH=$(uname -m); \
if [[ "$ARCH" == "aarch64" || "$ARCH" == "ppc64le" ]]; then \
export CPU_TARGET="$ARCH"; \
fi; \
cd /opt/gluten; \
- source /opt/rh/gcc-toolset-11/enable; \
+ source /opt/rh/gcc-toolset-12/enable; \
export VELOX_BUILD_SHARED=ON; \
./dev/builddeps-veloxbe.sh --run_setup_script=ON build_arrow; \
./build/mvn dependency:go-offline -Pbackends-velox -Piceberg -Pdelta
-Pspark-3.5 -DskipTests; \
diff --git a/dev/docker/Dockerfile.centos9-dynamic-build
b/dev/docker/Dockerfile.centos9-dynamic-build
index f160164099..0d7246b4a2 100644
--- a/dev/docker/Dockerfile.centos9-dynamic-build
+++ b/dev/docker/Dockerfile.centos9-dynamic-build
@@ -41,6 +41,7 @@ RUN set -ex; \
./install-spark-resources.sh 3.5; \
./install-spark-resources.sh 3.5-scala2.13; \
./install-spark-resources.sh 4.0; \
+ ./install-spark-resources.sh 4.1; \
ARCH=$(uname -m); \
if [[ "$ARCH" == "aarch64" || "$ARCH" == "ppc64le" ]]; then \
export CPU_TARGET="$ARCH"; \
diff --git a/dev/docker/cudf/Dockerfile b/dev/docker/cudf/Dockerfile
index 8f74b41528..071e153cb6 100644
--- a/dev/docker/cudf/Dockerfile
+++ b/dev/docker/cudf/Dockerfile
@@ -15,23 +15,22 @@
# limitations under the License.
#
-FROM ghcr.io/facebookincubator/velox-dev:adapters
-ENV CUDA_ARCHITECTURES=70
+FROM quay.io/centos/centos:stream9
+ENV CUDA_ARCHITECTURES=75
ENV
LD_LIBRARY_PATH=/opt/gluten/ep/build-velox/build/velox_ep/_build/release/_deps/curl-build/lib:$LD_LIBRARY_PATH
+ENV CC=/opt/rh/gcc-toolset-14/root/bin/gcc \
+ CXX=/opt/rh/gcc-toolset-14/root/bin/g++
-
-RUN yum install -y sudo patch perl && \
- dnf remove -y cuda-toolkit-12* && dnf install -y cuda-toolkit-13-1; \
+RUN dnf config-manager --add-repo
"https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/cuda-rhel9.repo";
\
+ dnf update; \
+ dnf install -y sudo patch maven perl git gcc-toolset-14 cuda-toolkit-13-1
&& \
dnf autoremove -y && dnf clean all; \
- rm -rf /opt/rh/gcc-toolset-12 && ln -s /opt/rh/gcc-toolset-14
/opt/rh/gcc-toolset-12; \
- ln -sf /usr/local/bin/cmake /usr/bin && \
- git clone --depth=1 https://github.com/apache/gluten /opt/gluten && \
+ git clone --depth=1 https://github.com/apache/incubator-gluten /opt/gluten
&& \
cd /opt/gluten && \
source /opt/rh/gcc-toolset-14/enable && \
- bash ./dev/buildbundle-veloxbe.sh --run_setup_script=OFF --build_arrow=ON
--spark_version=3.4 --build_tests=ON --build_benchmarks=ON --enable_gpu=ON && \
+ bash ./dev/buildbundle-veloxbe.sh --run_setup_script=ON --build_arrow=ON
--spark_version=3.5 --build_tests=ON --build_benchmarks=ON --enable_gpu=ON && \
rm -rf /opt/gluten && \
- rm -rf /root/.cache/ccache
-
+ rm -rf /root/.cache/ccache
# You can try the data in folder
backends-velox/src/test/resources/tpch-data-parquet
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]