[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.