Skip to content

拉取 AI Docker 镜像(vLLM / ComfyUI 等)慢怎么办

AI 相关的 Docker 镜像(vLLM、ComfyUI、pytorch/pytorch、NVIDIA NGC 镜像)动辄好几 GB,拉取慢、卡在 Pulling fs layer 很常见。解决方法取决于镜像来自哪个仓库

先看镜像来自哪

  • pytorch/pytorchnvidia/cuda 等 → 来自 Docker Hub → 用镜像加速器
  • nvcr.io/...(NVIDIA NGC)、ghcr.io/...不是 Docker Hub → 必须走代理

一、Docker Hub 镜像:配加速器

pytorch/pytorchnvidia/cuda、多数 ComfyUI 打包镜像在 Docker Hub。配置 registry mirror 即可:

编辑 /etc/docker/daemon.json:

json
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com"
  ]
}
bash
sudo systemctl daemon-reload && sudo systemctl restart docker

完整说明见 👉 Docker 镜像加速器配置

二、nvcr.io(NVIDIA NGC)镜像:必须走代理

很多高性能推理/训练镜像在 NVIDIA NGC(nvcr.io),镜像加速器对它无效,只能给 Docker 守护进程配代理:

bash
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/http-proxy.conf <<'EOF'
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1"
EOF

sudo systemctl daemon-reload && sudo systemctl restart docker

然后正常拉取:

bash
docker pull nvcr.io/nvidia/pytorch:24.05-py3

部分 NGC 镜像需要先 docker login nvcr.io(用 NGC API key)。

三、vLLM 官方镜像

vLLM 官方镜像通常在 Docker Hub(vllm/vllm-openai),走方法一加速器即可:

bash
docker pull vllm/vllm-openai:latest

若你用的是 GHCR 上的构建版(ghcr.io/...),则按方法二走代理。

四、容器内还要下模型/依赖?

镜像拉下来只是第一步——容器里跑起来还要下模型权重和 pip 包,那是另一套加速:

  • 模型权重:挂载宿主机已下好的目录,或容器内设 HF_ENDPOINT,见 hf-mirror
  • pip 依赖:build 时传代理 / 换源,见 pip 加速
bash
# 运行时把镜像变量和已下载模型传进容器
docker run --gpus all \
  -e HF_ENDPOINT=https://hf-mirror.com \
  -v /data/models:/models \
  vllm/vllm-openai:latest --model /models/Qwen2.5-7B

场景速查

镜像来源加速方式
pytorch/*nvidia/cudavllm/*Docker Hub 加速器(方法一)
nvcr.io/*(NGC)守护进程走代理(方法二)
ghcr.io/*守护进程走代理(方法二)
容器内下模型挂载 / HF_ENDPOINT(方法四)

小结

  • 先分清镜像仓库:Docker Hub 用加速器,NGC/GHCR 必须走代理。
  • 加速器对 nvcr.io 无效,别白配。
  • 镜像 ≠ 模型,容器内还要单独给权重和 pip 配加速。

本文仅供技术学习与研究,请遵守所在国家/地区法律法规。

本站为技术学习交流站点,与 GitHub, Inc. 无任何隶属或官方关系。所有内容仅供技术研究与学习,请遵守所在国家/地区的法律法规。