目录

解决方法 测试ok:

 安装nvidia-docker2 

解决步骤(Windows 和 Linux 通用)

✅ 1. 检查宿主机 GPU 驱动和 nvidia-smi

✅ 2. 安装 NVIDIA Docker 支持组件

✅ 3. 检查 Docker 是否支持 GPU

✅ 4. 修改 docker-compose.yml 启用 GPU 支持

✅ 快速检查点


Error response from daemon: could not select device driver "nvidia" with capabilities: [[gpu]]

解决方法 测试ok:

 安装nvidia-docker2 

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

curl -fsSL https://nvidia.github.io/nvidia-docker/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-docker.gpg

curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
  sed 's|^deb |deb [signed-by=/usr/share/keyrings/nvidia-docker.gpg] |' | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list

apt update

apt install -y nvidia-docker2

安装nvidia-container-toolkit

sudo apt-get update
 
sudo apt-get install -y nvidia-container-toolkit
 
#刷新一下系统
sudo systemctl daemon-reload
 
#重启docker
sudo systemctl restart docker

解决步骤(Windows 和 Linux 通用)


✅ 1. 检查宿主机 GPU 驱动和 nvidia-smi

在主机终端(非容器内)执行:

nvidia-smi

能看到 GPU 信息,说明驱动和 GPU 正常。


✅ 2. 安装 NVIDIA Docker 支持组件

Linux 用户运行:

# 添加 NVIDIA 的 docker 仓库(仅需一次) distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list # 安装 nvidia-docker2 sudo apt-get update && sudo apt-get install -y nvidia-docker2 # 重启 docker sudo systemctl restart docker

Windows (WSL2) 用户:

  • 安装最新版 NVIDIA GPU Driver for WSL2

  • 安装 CUDA Toolkit

  • 安装 Docker Desktop 并确保:

    • 设置 -> Resources -> WSL Integration 已启用

    • 设置 -> Resources -> GPU -> Enable GPU support in WSL 2 ✅ 已勾选

    • nvidia-smi 在 WSL 中能正常运行


✅ 3. 检查 Docker 是否支持 GPU

执行:

docker run --rm --gpus all nvidia/cuda:12.2.0-base-ubuntu20.04 nvidia-smi

能运行成功说明 GPU 已可用。


✅ 4. 修改 docker-compose.yml 启用 GPU 支持

确保 docker-compose.yml 中类似如下:

 

yaml

复制编辑

services: comfyui: image: your_image deploy: resources: reservations: devices: - capabilities: [gpu] runtime: nvidia environment: - NVIDIA_VISIBLE_DEVICES=all

🚨 如果 runtime: nvidia 报错,也可改为:

 

yaml

复制编辑

deploy: null environment: - NVIDIA_VISIBLE_DEVICES=all device_requests: - driver: nvidia count: all capabilities: [gpu]


✅ 快速检查点

步骤检查点
✔️ nvidia-smi主机上能运行
✔️ nvidia-container-toolkit已安装
✔️ Docker Compose 配置正确配置 GPU
✔️ WSL2 用户开启 WSL2 GPU 支持

Logo

分享最新的 NVIDIA AI Software 资源以及活动/会议信息,精选收录AI相关技术内容,欢迎大家加入社区并参与讨论。

更多推荐