xeon.Dockerfile 1.63 KB
Newer Older
1
2
3
FROM ubuntu:24.04
SHELL ["/bin/bash", "-c"]

4
ARG SGLANG_REPO=https://github.com/sgl-project/sglang.git
5
ARG VER_SGLANG=main
6

7
8
9
ARG VER_TORCH=2.9.0
ARG VER_TORCHVISION=0.24.0
ARG VER_TRITON=3.5.0
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

RUN apt-get update && \
    apt-get full-upgrade -y && \
    DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
    ca-certificates \
    git \
    curl \
    wget \
    vim \
    gcc \
    g++ \
    make

WORKDIR /sgl-workspace

25
RUN curl -fsSL -o miniforge.sh -O https://github.com/conda-forge/miniforge/releases/download/25.3.1-0/Miniforge3-25.3.1-0-Linux-x86_64.sh && \
26
27
28
29
30
31
32
    bash miniforge.sh -b -p ./miniforge3 && \
    rm -f miniforge.sh && \
    . miniforge3/bin/activate && \
    conda install -y libsqlite==3.48.0 gperftools tbb libnuma numactl

ENV PATH=/sgl-workspace/miniforge3/bin:/sgl-workspace/miniforge3/condabin:${PATH}
ENV PIP_ROOT_USER_ACTION=ignore
33
ENV CONDA_PREFIX=/sgl-workspace/miniforge3
34

35
RUN pip config set global.index-url https://download.pytorch.org/whl/cpu && \
36
    pip config set global.extra-index-url https://pypi.org/simple
37

Zaili Wang's avatar
Zaili Wang committed
38
RUN git clone ${SGLANG_REPO} sglang && \
39
40
    cd sglang && \
    git checkout ${VER_SGLANG} && \
41
42
43
    cd python && \
    cp pyproject_cpu.toml pyproject.toml && \
    pip install . && \
44
    pip install torch==${VER_TORCH} torchvision==${VER_TORCHVISION} triton==${VER_TRITON} --force-reinstall && \
45
    cd ../sgl-kernel && \
46
    cp pyproject_cpu.toml pyproject.toml && \
47
    pip install .
48

49
ENV SGLANG_USE_CPU_ENGINE=1
50
51
52
ENV LD_PRELOAD=/sgl-workspace/miniforge3/lib/libiomp5.so:/sgl-workspace/miniforge3/lib/libtcmalloc.so:/sgl-workspace/miniforge3/lib/libtbbmalloc.so.2

WORKDIR /sgl-workspace/sglang