mirror of
https://github.com/NVIDIA/TensorRT-LLM.git
synced 2026-01-14 06:27:45 +08:00
[None][chore] reduce the layers of the devel docker image (#9077)
Signed-off-by: Martin Marciniszyn Mehringer <11665257+MartinMarciniszyn@users.noreply.github.com>
This commit is contained in:
parent
4107254c82
commit
974ad56515
@ -12,9 +12,10 @@ LABEL com.nvidia.eula="https://www.nvidia.com/en-us/agreements/enterprise-softwa
|
|||||||
LABEL com.nvidia.ai-terms="https://www.nvidia.com/en-us/agreements/enterprise-software/product-specific-terms-for-ai-products/"
|
LABEL com.nvidia.ai-terms="https://www.nvidia.com/en-us/agreements/enterprise-software/product-specific-terms-for-ai-products/"
|
||||||
|
|
||||||
# https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html
|
# https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html
|
||||||
# The default values come from `nvcr.io/nvidia/pytorch`
|
ARG SH_ENV="/etc/shinit_v2"
|
||||||
ENV BASH_ENV=${BASH_ENV:-/etc/bash.bashrc}
|
ENV ENV=${SH_ENV}
|
||||||
ENV ENV=${ENV:-/etc/shinit_v2}
|
ARG BASH_ENV="/etc/bash.bashrc"
|
||||||
|
ENV BASH_ENV=${BASH_ENV}
|
||||||
|
|
||||||
ARG GITHUB_MIRROR=""
|
ARG GITHUB_MIRROR=""
|
||||||
RUN echo "Using GitHub mirror: $GITHUB_MIRROR"
|
RUN echo "Using GitHub mirror: $GITHUB_MIRROR"
|
||||||
@ -43,48 +44,41 @@ COPY docker/common/install.sh \
|
|||||||
docker/common/install_ucx.sh \
|
docker/common/install_ucx.sh \
|
||||||
docker/common/install_nixl.sh \
|
docker/common/install_nixl.sh \
|
||||||
docker/common/install_etcd.sh \
|
docker/common/install_etcd.sh \
|
||||||
docker/common/install_mooncake.sh \
|
|
||||||
./
|
./
|
||||||
|
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} \
|
|
||||||
PYTHON_VERSION=${PYTHON_VERSION} \
|
|
||||||
bash ./install.sh --base && rm install_base.sh
|
|
||||||
|
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install.sh --cmake && rm install_cmake.sh
|
|
||||||
|
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install.sh --ccache && rm install_ccache.sh
|
|
||||||
|
|
||||||
RUN bash ./install.sh --cuda_toolkit && rm install_cuda_toolkit.sh
|
|
||||||
|
|
||||||
ARG TRT_VER
|
ARG TRT_VER
|
||||||
ARG CUDA_VER
|
ARG CUDA_VER
|
||||||
ARG CUDNN_VER
|
ARG CUDNN_VER
|
||||||
ARG NCCL_VER
|
ARG NCCL_VER
|
||||||
ARG CUBLAS_VER
|
ARG CUBLAS_VER
|
||||||
RUN TRT_VER=${TRT_VER} \
|
ARG TORCH_INSTALL_TYPE="skip"
|
||||||
|
RUN GITHUB_MIRROR=${GITHUB_MIRROR} \
|
||||||
|
PYTHON_VERSION=${PYTHON_VERSION} \
|
||||||
|
TRT_VER=${TRT_VER} \
|
||||||
CUDA_VER=${CUDA_VER} \
|
CUDA_VER=${CUDA_VER} \
|
||||||
CUDNN_VER=${CUDNN_VER} \
|
CUDNN_VER=${CUDNN_VER} \
|
||||||
NCCL_VER=${NCCL_VER} \
|
NCCL_VER=${NCCL_VER} \
|
||||||
CUBLAS_VER=${CUBLAS_VER} \
|
CUBLAS_VER=${CUBLAS_VER} \
|
||||||
bash ./install.sh --tensorrt && rm install_tensorrt.sh
|
TORCH_INSTALL_TYPE=${TORCH_INSTALL_TYPE} \
|
||||||
|
bash ./install.sh --base --cmake --ccache --cuda_toolkit --tensorrt --polygraphy --mpi4py --pytorch --opencv && \
|
||||||
|
rm install_base.sh && \
|
||||||
|
rm install_cmake.sh && \
|
||||||
|
rm install_ccache.sh && \
|
||||||
|
rm install_cuda_toolkit.sh && \
|
||||||
|
rm install_tensorrt.sh && \
|
||||||
|
rm install_polygraphy.sh && \
|
||||||
|
rm install_mpi4py.sh && \
|
||||||
|
rm install_pytorch.sh && \
|
||||||
|
rm install.sh
|
||||||
|
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install.sh --polygraphy && rm install_polygraphy.sh
|
# Install UCX, NIXL, etcd
|
||||||
|
# TODO: Combine these into the main install.sh script
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install.sh --mpi4py && rm install_mpi4py.sh
|
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install_ucx.sh && \
|
||||||
|
GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install_nixl.sh && \
|
||||||
ARG TORCH_INSTALL_TYPE="skip"
|
bash ./install_etcd.sh && \
|
||||||
RUN TORCH_INSTALL_TYPE=${TORCH_INSTALL_TYPE} bash ./install.sh --pytorch && rm install_pytorch.sh
|
rm install_ucx.sh && \
|
||||||
|
rm install_nixl.sh && \
|
||||||
RUN bash ./install.sh --opencv && rm install.sh
|
rm install_etcd.sh
|
||||||
|
|
||||||
# Install UCX first
|
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install_ucx.sh && rm install_ucx.sh
|
|
||||||
|
|
||||||
# Install NIXL
|
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install_nixl.sh && rm install_nixl.sh
|
|
||||||
|
|
||||||
# Install etcd
|
|
||||||
RUN bash ./install_etcd.sh && rm install_etcd.sh
|
|
||||||
|
|
||||||
FROM ${TRITON_IMAGE}:${TRITON_BASE_TAG} AS triton
|
FROM ${TRITON_IMAGE}:${TRITON_BASE_TAG} AS triton
|
||||||
|
|
||||||
@ -99,16 +93,18 @@ COPY --from=triton /opt/tritonserver/caches /opt/tritonserver/caches
|
|||||||
|
|
||||||
# Copy all installation scripts at once to reduce layers
|
# Copy all installation scripts at once to reduce layers
|
||||||
COPY docker/common/install_triton.sh \
|
COPY docker/common/install_triton.sh \
|
||||||
|
docker/common/install_mooncake.sh \
|
||||||
./
|
./
|
||||||
|
|
||||||
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install_triton.sh && rm install_triton.sh
|
|
||||||
|
|
||||||
# Install Mooncake, after triton handles boost requirement
|
# Install Mooncake, after triton handles boost requirement
|
||||||
RUN if [ -f /etc/redhat-release ]; then \
|
RUN GITHUB_MIRROR=${GITHUB_MIRROR} bash ./install_triton.sh && \
|
||||||
|
if [ -f /etc/redhat-release ]; then \
|
||||||
echo "Rocky8 detected, skipping mooncake installation"; \
|
echo "Rocky8 detected, skipping mooncake installation"; \
|
||||||
else \
|
else \
|
||||||
bash ./install_mooncake.sh; \
|
bash ./install_mooncake.sh; \
|
||||||
fi && rm install_mooncake.sh
|
fi && \
|
||||||
|
rm install_triton.sh && \
|
||||||
|
rm install_mooncake.sh
|
||||||
|
|
||||||
FROM ${DEVEL_IMAGE} AS wheel
|
FROM ${DEVEL_IMAGE} AS wheel
|
||||||
WORKDIR /src/tensorrt_llm
|
WORKDIR /src/tensorrt_llm
|
||||||
|
|||||||
@ -75,8 +75,16 @@ define rewrite_tag
|
|||||||
$(shell echo $(IMAGE_WITH_TAG) | sed "s/\/tensorrt-llm:/\/tensorrt-llm-staging:/g")
|
$(shell echo $(IMAGE_WITH_TAG) | sed "s/\/tensorrt-llm:/\/tensorrt-llm-staging:/g")
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
base_pull:
|
||||||
|
@echo "Pulling base image: $(BASE_IMAGE):$(BASE_TAG)"
|
||||||
|
docker pull $(BASE_IMAGE):$(BASE_TAG)
|
||||||
|
|
||||||
%_build: DEVEL_IMAGE = $(if $(findstring 1,$(JENKINS_DEVEL)),$(shell . ../jenkins/current_image_tags.properties && echo $$LLM_DOCKER_IMAGE))
|
%_build: DEVEL_IMAGE = $(if $(findstring 1,$(JENKINS_DEVEL)),$(shell . ../jenkins/current_image_tags.properties && echo $$LLM_DOCKER_IMAGE))
|
||||||
%_build:
|
%_build: SH_ENV = $(shell docker inspect --format='{{range .Config.Env}}{{println .}}{{end}}' $(BASE_IMAGE):$(BASE_TAG) \
|
||||||
|
| grep '^ENV=' | sed 's/^[^=]*=//' 2>/dev/null)
|
||||||
|
%_build: BASH_ENV = $(shell docker inspect --format='{{range .Config.Env}}{{println .}}{{end}}' $(BASE_IMAGE):$(BASE_TAG) \
|
||||||
|
| grep '^BASH_ENV=' | sed 's/^[^=]*=//' 2>/dev/null)
|
||||||
|
%_build: base_pull
|
||||||
@echo "Building docker image: $(IMAGE_WITH_TAG)"
|
@echo "Building docker image: $(IMAGE_WITH_TAG)"
|
||||||
docker buildx build $(DOCKER_BUILD_OPTS) $(DOCKER_BUILD_ARGS) \
|
docker buildx build $(DOCKER_BUILD_OPTS) $(DOCKER_BUILD_ARGS) \
|
||||||
--progress $(DOCKER_PROGRESS) \
|
--progress $(DOCKER_PROGRESS) \
|
||||||
@ -97,6 +105,8 @@ endef
|
|||||||
$(if $(GIT_COMMIT), --build-arg GIT_COMMIT="$(GIT_COMMIT)") \
|
$(if $(GIT_COMMIT), --build-arg GIT_COMMIT="$(GIT_COMMIT)") \
|
||||||
$(if $(GITHUB_MIRROR), --build-arg GITHUB_MIRROR="$(GITHUB_MIRROR)") \
|
$(if $(GITHUB_MIRROR), --build-arg GITHUB_MIRROR="$(GITHUB_MIRROR)") \
|
||||||
$(if $(PYTHON_VERSION), --build-arg PYTHON_VERSION="$(PYTHON_VERSION)") \
|
$(if $(PYTHON_VERSION), --build-arg PYTHON_VERSION="$(PYTHON_VERSION)") \
|
||||||
|
$(if $(SH_ENV), --build-arg SH_ENV="$(SH_ENV)") \
|
||||||
|
$(if $(BASH_ENV), --build-arg BASH_ENV="$(BASH_ENV)") \
|
||||||
$(if $(STAGE), --target $(STAGE)) \
|
$(if $(STAGE), --target $(STAGE)) \
|
||||||
--file Dockerfile.multi \
|
--file Dockerfile.multi \
|
||||||
--tag $(IMAGE_WITH_TAG) \
|
--tag $(IMAGE_WITH_TAG) \
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
set -Eeo pipefail
|
set -Eeo pipefail
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
trap 'echo "[install.sh] Error on line $LINENO" >&2' ERR
|
trap 'echo "[install.sh] Error on line $LINENO" >&2' ERR
|
||||||
@ -125,7 +125,7 @@ fi
|
|||||||
|
|
||||||
if [ $opencv -eq 1 ]; then
|
if [ $opencv -eq 1 ]; then
|
||||||
echo "Installing OpenCV..."
|
echo "Installing OpenCV..."
|
||||||
pip3 uninstall -y opencv
|
bash -c "pip3 uninstall -y opencv"
|
||||||
rm -rf /usr/local/lib/python3*/dist-packages/cv2/
|
rm -rf /usr/local/lib/python3*/dist-packages/cv2/
|
||||||
pip3 install opencv-python-headless --force-reinstall --no-deps --no-cache-dir
|
bash -c "pip3 install opencv-python-headless --force-reinstall --no-deps --no-cache-dir"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@ -13,7 +13,7 @@
|
|||||||
# images are adopted from PostMerge pipelines, the abbreviated commit hash is used instead.
|
# images are adopted from PostMerge pipelines, the abbreviated commit hash is used instead.
|
||||||
IMAGE_NAME=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm
|
IMAGE_NAME=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm
|
||||||
|
|
||||||
LLM_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:pytorch-25.10-py3-x86_64-ubuntu24.04-trt10.13.3.9-skip-tritondevel-202511271125-9294
|
LLM_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:pytorch-25.10-py3-x86_64-ubuntu24.04-trt10.13.3.9-skip-tritondevel-202511281406-9077
|
||||||
LLM_SBSA_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:pytorch-25.10-py3-aarch64-ubuntu24.04-trt10.13.3.9-skip-tritondevel-202511271125-9294
|
LLM_SBSA_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:pytorch-25.10-py3-aarch64-ubuntu24.04-trt10.13.3.9-skip-tritondevel-202511281406-9077
|
||||||
LLM_ROCKYLINUX8_PY310_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:cuda-13.0.2-devel-rocky8-x86_64-rocky8-py310-trt10.13.3.9-skip-tritondevel-202511271125-9294
|
LLM_ROCKYLINUX8_PY310_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:cuda-13.0.2-devel-rocky8-x86_64-rocky8-py310-trt10.13.3.9-skip-tritondevel-202511281406-9077
|
||||||
LLM_ROCKYLINUX8_PY312_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:cuda-13.0.2-devel-rocky8-x86_64-rocky8-py312-trt10.13.3.9-skip-tritondevel-202511271125-9294
|
LLM_ROCKYLINUX8_PY312_DOCKER_IMAGE=urm.nvidia.com/sw-tensorrt-docker/tensorrt-llm:cuda-13.0.2-devel-rocky8-x86_64-rocky8-py312-trt10.13.3.9-skip-tritondevel-202511281406-9077
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user