[XPU][Docker] switch to ubuntu 24.04 as base image (#45973)

Signed-off-by: Kunshang Ji <kunshang.ji@intel.com>

Kunshang Ji committed Jun 24, 2026 at 20:39 UTC d4448b511d75449cc5ee4c3f292f685209e8b777
2 files changed +21 -11
.buildkite/scripts/hardware_ci/run-intel-test.sh
+1 -1
@@ -369,7 +369,7 @@ export HF_TOKEN ZE_AFFINITY_MASK
369 -e CMDS \
370 --name "${container_name}" \
371 "${IMAGE}" \
372 - bash -c 'set -e; echo "ZE_AFFINITY_MASK is ${ZE_AFFINITY_MASK:-}"; eval "$CMDS"' \
372 + bash -c 'set -e; source /opt/intel/oneapi/setvars.sh --force; source /opt/intel/oneapi/ccl/2021.15/env/vars.sh --force; echo "ZE_AFFINITY_MASK is ${ZE_AFFINITY_MASK:-}"; eval "$CMDS"' \
373 >/dev/null
374 } 9>/tmp/docker-pull.lock
375
docker/Dockerfile.xpu
+20 -10
@@ -32,18 +32,22 @@ RUN --mount=type=cache,target=/root/.cargo/registry \
32 --mount=type=cache,target=/root/.cargo/git \
33 bash build_rust.sh
34
35 -FROM intel/deep-learning-essentials:2025.3.2-0-devel-ubuntu24.04 AS vllm-base
35 +FROM ubuntu:24.04 AS vllm-base
36 +
37 +ENV DEBIAN_FRONTEND=noninteractive
38
39 WORKDIR /workspace/
40
41 ARG PYTHON_VERSION=3.12
42 ARG PIP_EXTRA_INDEX_URL="https://download.pytorch.org/whl/xpu"
43
42 -RUN apt clean && apt-get update -y && \
43 - apt-get install -y --no-install-recommends --fix-missing \
44 +RUN apt-get update -y && \
45 + apt-get install -y --no-install-recommends \
46 + build-essential \
47 curl \
48 ffmpeg \
49 git \
50 + gpg \
51 libsndfile1 \
52 libsm6 \
53 libxext6 \
@@ -53,9 +57,11 @@ RUN apt clean && apt-get update -y && \
57 numactl \
58 wget \
59 vim \
60 + ca-certificates \
61 python3.12 \
62 python3.12-dev \
58 - python3-pip
63 + python3-pip && \
64 + rm -rf /var/lib/apt/lists/*
65
66 # Add oneAPI repo, pin oneAPI to 2025.3, then install pinned packages in one layer.
67 RUN wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null && \
@@ -82,6 +88,7 @@ RUN mkdir neo && \
88 wget https://github.com/intel/compute-runtime/releases/download/26.18.38308.1/libigdgmm12_22.10.0_amd64.deb && \
89 wget https://github.com/intel/compute-runtime/releases/download/26.18.38308.1/libze-intel-gpu1_26.18.38308.1-0_amd64.deb && \
90 wget https://github.com/oneapi-src/level-zero/releases/download/v1.28.2/level-zero_1.28.2+u24.04_amd64.deb && \
91 + wget https://github.com/oneapi-src/level-zero/releases/download/v1.28.2/level-zero-devel_1.28.2+u24.04_amd64.deb && \
92 dpkg -i *.deb && \
93 cd .. && \
94 rm -rf neo
@@ -101,7 +108,13 @@ RUN wget "https://github.com/uxlfoundation/oneCCL/releases/download/2021.15.9/${
108 echo "source /opt/intel/oneapi/setvars.sh --force" >> /root/.bashrc && \
109 echo "source /opt/intel/oneapi/ccl/2021.15/env/vars.sh --force" >> /root/.bashrc && \
110 rm -f /opt/intel/oneapi/ccl/latest && \
104 - ln -s /opt/intel/oneapi/ccl/2021.15 /opt/intel/oneapi/ccl/latest
111 + ln -s /opt/intel/oneapi/ccl/2021.15 /opt/intel/oneapi/ccl/latest && \
112 + printf '%s\n' \
113 + '/opt/intel/oneapi/ccl/2021.15/lib' \
114 + '/opt/intel/oneapi/mpi/2021.15/lib' \
115 + '/opt/intel/oneapi/compiler/2025.3/lib' \
116 + > /etc/ld.so.conf.d/oneapi-ccl.conf && \
117 + ldconfig
118
119 SHELL ["bash", "-c"]
120 CMD ["bash", "-c", "source /root/.bashrc && exec bash"]
@@ -123,7 +136,7 @@ RUN --mount=type=cache,target=/root/.cache/uv \
136
137
138
126 -ENV LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib/"
139 +ENV LD_LIBRARY_PATH=/opt/intel/oneapi/ccl/2021.15/lib:/opt/intel/oneapi/mpi/2021.15/lib:/opt/intel/oneapi/compiler/2025.3/lib:/usr/local/lib
140 CMD ["/bin/bash"]
141
142 ######################### UCX + NIXL BUILD STAGE #########################
@@ -204,10 +217,7 @@ RUN --mount=type=cache,target=/root/.cache/uv \
217 uv pip install --no-build-isolation -r /workspace/vllm/requirements/test/xpu.txt && \
218 uv pip uninstall triton triton-xpu && \
219 uv pip install triton-xpu==3.7.1 && \
207 - uv pip uninstall oneccl oneccl-devel && \
208 - source /opt/intel/oneapi/setvars.sh --force && \
209 - source /opt/intel/oneapi/ccl/2021.15/env/vars.sh --force && \
210 - export CMAKE_PREFIX_PATH="$(python3 -c 'import site; print(site.getsitepackages()[0])'):${CMAKE_PREFIX_PATH}"
220 + uv pip uninstall oneccl oneccl-devel
221
222 # Keep source-dependent layers near the end so frequent code-only changes
223 # don't invalidate heavy dependency and UCX/NIXL layers.