🧱 第一步:确认宿主机GPU正常

先在宿主机(不是容器)直接跑:

root@prod102:/models/deepseek-v3.2# nvidia-smi
Tue Apr 21 17:15:05 2026       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.120                Driver Version: 550.120        CUDA Version: 12.4     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA H20                     On  |   00000000:00:03.0 Off |                    0 |
| N/A   38C    P0            125W /  500W |   18310MiB /  97871MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
                                                                                         
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A     47261      C   ...aconda3/envs/mxh_env/bin/python3.11       2306MiB |
|    0   N/A  N/A     47262      C   ...aconda3/envs/mxh_env/bin/python3.11       1534MiB |
|    0   N/A  N/A     47263      C   ...aconda3/envs/mxh_env/bin/python3.11       2978MiB |
|    0   N/A  N/A     47264      C   ...aconda3/envs/mxh_env/bin/python3.11       1822MiB |
|    0   N/A  N/A     49609      C   ...conda3/envs/mxh_live/bin/python3.11       1306MiB |
|    0   N/A  N/A     49610      C   ...conda3/envs/mxh_live/bin/python3.11       1306MiB |
|    0   N/A  N/A     49611      C   ...conda3/envs/mxh_live/bin/python3.11       1306MiB |
|    0   N/A  N/A     49612      C   ...conda3/envs/mxh_live/bin/python3.11       1306MiB |
|    0   N/A  N/A     53142      C   ...aconda3/envs/mxh_env/bin/python3.11       1080MiB |
|    0   N/A  N/A     53143      C   ...aconda3/envs/mxh_env/bin/python3.11       1082MiB |
|    0   N/A  N/A     53144      C   ...aconda3/envs/mxh_env/bin/python3.11       1116MiB |
|    0   N/A  N/A     53145      C   ...aconda3/envs/mxh_env/bin/python3.11       1118MiB |
+-----------------------------------------------------------------------------------------+

👉 结果判断:

✅ 正常

能看到:

  • GPU型号
  • 显存
  • Driver Version

➡️ 说明驱动OK,继续下一步


❌ 报错(最常见)

比如:

  • command not found
  • NVIDIA-SMI has failed

👉 说明:驱动没装好或坏了

✔️ 解决:

去装官方驱动(一定要匹配显卡)

👉 推荐直接用 NVIDIA 官方驱动:

Ubuntu例子:

sudo apt update
sudo apt install -y nvidia-driver-535
sudo reboot

然后再跑 nvidia-smi


🐳 第二步:确认 Docker 正常

docker -v

如果没有:

sudo apt install -y docker.io
sudo systemctl enable docker
sudo systemctl start docker

⚙️ 第三步:安装 GPU 容器支持(核心)

👉 这是你这个问题最关键的一步

安装:nvidia-container-toolkit

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)

curl -s -L https://nvidia.github.io/libnvidia-container/gpgkey | sudo apt-key add -

curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list \
  | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

sudo apt update
sudo apt install -y nvidia-container-toolkit

🔧 配置 Docker 使用 GPU

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

🚀 第四步:重新测试(关键验证)

docker run --gpus all nvidia/cuda:12.2.0-base nvidia-smi

❗ 常见报错 → 对应解决

❌ 1. could not select device driver "" with capabilities: [[gpu]]

👉 说明:Docker不认识GPU

✔️ 解决:

  • 没装 nvidia-container-toolkit
  • 或没执行 runtime configure

❌ 2. NVIDIA-SMI has failed

👉 驱动问题

✔️ 解决:

  • 重装驱动
  • 或版本不匹配

❌ 3. CUDA driver version is insufficient

👉 驱动版本 < CUDA要求

✔️ 解决:

  • 升级驱动(优先)
  • 或换低版本CUDA镜像(比如11.8)

🧠 一句话理解整个流程

你这套链路是:

GPU硬件
   ↓
NVIDIA驱动
   ↓
Docker
   ↓
nvidia-container-toolkit
   ↓
CUDA容器
   ↓
你的大模型(vLLM)

👉 任何一层断了,都会失败


💡 给你一个更稳的建议(做大模型部署)

如果你是跑:

  • vLLM
  • TGI
  • llama.cpp GPU版

👉 推荐用:

nvidia/cuda:12.1.1-runtime-ubuntu22.04

兼容性更稳(比12.2更通用)


更多推荐