diff --git a/docker/Dockerfile b/docker/Dockerfile index 677fa39f7..93dfa1b5a 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,7 +1,8 @@ ARG CUDA_VERSION=12.6.1 -FROM nvidia/cuda:${CUDA_VERSION}-cudnn-devel-ubuntu22.04 +FROM nvidia/cuda:${CUDA_VERSION}-cudnn-devel-ubuntu22.04 as base ARG BUILD_TYPE=all +ARG BRANCH_TYPE=remote ARG DEEPEP_COMMIT=b92d0d4860ce6866cd6d31bfbae937f9a7a3772b ARG CMAKE_BUILD_PARALLEL_LEVEL=2 ENV DEBIAN_FRONTEND=noninteractive \ @@ -58,10 +59,21 @@ RUN mkdir -p /tmp/gdrcopy && cd /tmp \ # Fix DeepEP IBGDA symlink RUN ln -sf /usr/lib/x86_64-linux-gnu/libmlx5.so.1 /usr/lib/x86_64-linux-gnu/libmlx5.so -# Clone and install SGLang +FROM scratch AS local_src +COPY . /src + +FROM base AS build-image +# Install SGLang WORKDIR /sgl-workspace +ARG BRANCH_TYPE +COPY --from=local_src /src /tmp/local_src +RUN if [ "$BRANCH_TYPE" = "local" ]; then \ + cp -r /tmp/local_src /sgl-workspace/sglang; \ + else \ + git clone --depth=1 https://github.com/sgl-project/sglang.git /sgl-workspace/sglang; \ + fi \ + && rm -rf /tmp/local_src RUN python3 -m pip install --no-cache-dir --upgrade pip setuptools wheel html5lib six \ - && git clone --depth=1 https://github.com/sgl-project/sglang.git \ && cd sglang \ && case "$CUDA_VERSION" in \ 12.6.1) CUINDEX=126 ;; \