mirror of
https://github.com/kvcache-ai/sglang.git
synced 2026-06-30 19:57:52 +00:00
52 lines
1.6 KiB
Docker
52 lines
1.6 KiB
Docker
FROM ubuntu:24.04
|
|
SHELL ["/bin/bash", "-c"]
|
|
|
|
ARG SGLANG_REPO=https://github.com/sgl-project/sglang.git
|
|
ARG VER_SGLANG=main
|
|
|
|
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 \
|
|
libsqlite3-dev \
|
|
google-perftools \
|
|
libtbb-dev \
|
|
libnuma-dev \
|
|
numactl
|
|
|
|
WORKDIR /opt
|
|
|
|
RUN curl -LsSf https://astral.sh/uv/install.sh | sh && \
|
|
source $HOME/.local/bin/env && \
|
|
uv venv --python 3.12
|
|
|
|
RUN echo -e '[[index]]\nname = "torch"\nurl = "https://download.pytorch.org/whl/cpu"\n\n[[index]]\nname = "torchvision"\nurl = "https://download.pytorch.org/whl/cpu"\n\n[[index]]\nname = "torchaudio"\nurl = "https://download.pytorch.org/whl/cpu"\n\n[[index]]\nname = "triton"\nurl = "https://download.pytorch.org/whl/cpu"' > .venv/uv.toml
|
|
|
|
ENV UV_CONFIG_FILE=/opt/.venv/uv.toml
|
|
|
|
WORKDIR /sgl-workspace
|
|
RUN source $HOME/.local/bin/env && \
|
|
source /opt/.venv/bin/activate && \
|
|
git clone ${SGLANG_REPO} sglang && \
|
|
cd sglang && \
|
|
git checkout ${VER_SGLANG} && \
|
|
cd python && \
|
|
cp pyproject_cpu.toml pyproject.toml && \
|
|
uv pip install . && \
|
|
cd ../sgl-kernel && \
|
|
cp pyproject_cpu.toml pyproject.toml && \
|
|
uv pip install .
|
|
|
|
ENV SGLANG_USE_CPU_ENGINE=1
|
|
ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc.so.4:/usr/lib/x86_64-linux-gnu/libtbbmalloc.so:/opt/.venv/lib/libiomp5.so
|
|
RUN echo 'source /opt/.venv/bin/activate' >> /root/.bashrc
|
|
|
|
WORKDIR /sgl-workspace/sglang
|