Docker 运行 vllm
Using Docker - vLLM
Installing the NVIDIA Container Toolkit — NVIDIA Container Toolkit
CUDA Installation Guide for Linux — Installation Guide for Linux 12.9 documentation
Docker Error - Unknown or Invalid Runtime Name: Nvidia · Issue #132 · NVIDIA-ISAAC-ROS/isaac_ros_visual_slam
NVIDIA Container 运行时库 - USTC Mirror Help
Docker Error - Unknown or Invalid Runtime Name: Nvidia · Issue #132 · NVIDIA-ISAAC-ROS/isaac_ros_visual_slam
nvidia-container-cli reports incorrect CUDA driver version on WSL2 · Issue #148 · NVIDIA/nvidia-container-toolkit
安装 NVIDIA Container Toolkit
配置 production repo:
cd ~/downloads
curl -sL --proxy http://127.0.0.1:11111 https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -sL --proxy http://127.0.0.1:11111 https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
# 使用实验性 packages
sudo sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
替换成中科大镜像源:
sudo sed -i 's#nvidia.github.io#mirrors.ustc.edu.cn#g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
更新 packages list:
sudo apt-get update
安装 NVIDIA Container Toolkit:
export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.17.8-1
sudo apt-get install -y nvidia-container-toolkit=$NVIDIA_CONTAINER_TOOLKIT_VERSION nvidia-container-toolkit-base=$NVIDIA_CONTAINER_TOOLKIT_VERSION libnvidia-container-tools=$NVIDIA_CONTAINER_TOOLKIT_VERSION libnvidia-container1=$NVIDIA_CONTAINER_TOOLKIT_VERSION
配置 NVIDIA Container Runtime
sudo nano /etc/docker/daemon.json
,添加如下内容:
{
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}
重启 daemon 和 docker 服务:
sudo systemctl daemon-reload
sudo systemctl restart docker
下载模型
在 docker 中运行 vllm,无法使用 HF_ENDPOINT。所以先下载模型到本地:
export HF_ENDPOINT=https://hf-mirror.com
huggingface-cli download Qwen/Qwen3-0.6B
如果此前运行过 docker,可能会出现模型文件以 root 用户权限创建的情况,导致无法下载模型。
这时需要修改权限:
sudo chown -R "$(id -u):$(id -g)" ~/.cache/huggingface
然后再运行 huggingface-cli
下载。
运行容器
在 Docker 中运行:
docker run --rm --runtime nvidia --gpus all -v ~/.cache/huggingface:/root/.cache/huggingface --env HF_ENDPOINT=https://hf-mirror.com --env HF_HUB_OFFLINE=1 --env NVIDIA_DISABLE_REQUIRE=0 -p 48989:48989 --ipc=host vllm/vllm-openai:latest --model Qwen/Qwen3-0.6B
--rm
:容器退出后删除容器--runtime nvidia
:使用 NVIDIA 容器运行时--gpus all
:使用所有可用的 GPU-v ~/.cache/huggingface:/root/.cache/huggingface
:将本地的 Hugging Face 缓存目录挂载到容器中--env HF_ENDPOINT=https://hf-mirror.com
:设置 Hugging Face--env HF_HUB_OFFLINE=1
:使用本地缓存模型--env NVIDIA_DISABLE_REQUIRE=1
:不检查 NVIDIA 驱动版本-p 48989:48989
:将容器的 48989 端口映射到主机的 48989 端口--ipc=host
:使用主机的 IPC 命名空间vllm/vllm-openai:latest
:使用最新的 vllm-openai 镜像--model Qwen/Qwen3-0.6B
:使用的模型