You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows11下WSL2 Docker CUDA支持报错排查求助

Windows 11多GPU环境下WSL2 Docker GPU容器启动失败的排查方法

环境信息

  • Windows系统CUDA版本:11.8
  • Windows端nvidia-smi输出:
Sat Dec  3 06:44:49 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 527.37       Driver Version: 527.37       CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA A30         TCC   | 00000000:41:00.0 Off |                    0 |
| N/A   48C    P0    39W / 165W |      0MiB / 24576MiB |      0%      Default |
|                               |                      |             Disabled |
+-------------------------------+----------------------+----------------------+
|   1  NVIDIA GeForce ... WDDM  | 00000000:61:00.0  On |                  N/A |
| 24%   41C    P8    15W / 180W |   1411MiB /  8192MiB |     11%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    1   N/A  N/A      2632    C+G   ...y\ShellExperienceHost.exe    N/A      |
|    1   N/A  N/A      6040    C+G   ...ontend\Docker Desktop.exe    N/A      |
|    1   N/A  N/A      8588    C+G   C:\Windows\explorer.exe         N/A      |
|    1   N/A  N/A     10692    C+G   ...n1h2txyewy\SearchHost.exe    N/A      |
|    1   N/A  N/A     10724    C+G   ...artMenuExperienceHost.exe    N/A      |
|    1   N/A  N/A     13060    C+G   ...perience\NVIDIA Share.exe    N/A      |
|    1   N/A  N/A     14252    C+G   ...418.62\msedgewebview2.exe    N/A      |
|    1   N/A  N/A     14816    C+G   ...ge\Application\msedge.exe    N/A      |
|    1   N/A  N/A     15300    C+G   ...lPanel\SystemSettings.exe    N/A      |
|    1   N/A  N/A     15384    C+G   ...ck\app-4.29.149\slack.exe    N/A      |
|    1   N/A  N/A     16488    C+G   ...418.62\msedgewebview2.exe    N/A      |
|    1   N/A  N/A     18084    C+G   ...me\Application\chrome.exe    N/A      |
+-----------------------------------------------------------------------------+
  • WSL版本:WSL2
PS C:\Users\olegj> wsl -l -v
  NAME                   STATE           VERSION
* docker-desktop         Running         2
  docker-desktop-data    Running         2
  • Docker版本:20.10.21, build baeda1f
  • Docker Desktop版本:4.15.0 (93002)

报错信息

启动带GPU的Docker容器时触发以下错误:

docker: Error response from daemon: failed to create shim task: OCI
runtime create failed: runc create failed: unable to start container
process: error during container init: error running hook #0: error
running hook: exit status 1, stdout: , stderr: Auto-detected mode as
'legacy' nvidia-container-cli: initialization error: nvml error:
unknown error: unknown.

触发报错的命令示例:

docker run --rm --gpus all nvidia/cuda:11.8.0-base-ubuntu20.04 nvidia-smi
docker run --env NVIDIA_DISABLE_REQUIRE=1 --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody 342 nbody -gpu -benchmark

问题背景

全新Windows系统单GPU时一切正常,安装第二块不同型号GPU后出现上述报错,重新安装CUDA、Docker及WSL内的CUDA后问题仍存在。

排查方法

  • 验证WSL2中GPU可用性
    进入WSL2环境(执行wsl命令),运行nvidia-smi确认能否识别两块GPU。若WSL内无法识别,优先解决WSL与NVIDIA驱动的兼容性问题,确保Windows端驱动为支持WSL2的版本。
  • 检查GPU模式冲突
    当前A30为TCC模式、GeForce显卡为WDDM模式,尝试将A30切换为WDDM模式(需管理员权限执行nvidia-smi -dm 0,重启生效),或在NVIDIA控制面板确认默认GPU设置后再测试容器启动。
  • 排查nvidia-container-toolkit配置
    在WSL2内检查/etc/nvidia-container-runtime/config.toml文件,确保未限制GPU型号;尝试手动指定单块GPU运行容器,命令示例:docker run --rm --gpus '"device=1"' nvidia/cuda:11.8.0-base-ubuntu20.04 nvidia-smi,排查多GPU型号不兼容问题。
  • 更新Docker及相关组件
    将Docker Desktop升级到最新稳定版,执行wsl --update更新WSL2内核;在WSL2内重新安装nvidia-container-toolkit,确保组件与驱动版本匹配。
  • 检查系统服务与权限
    确认Windows端NVIDIA Container Runtime服务处于运行状态;以管理员权限启动Docker Desktop;尝试在WSL2内以root用户运行容器,排查权限不足问题。
  • 收集详细日志
    启动容器时添加--debug参数获取Docker启动日志;查看WSL2内/var/log/nvidia-container-runtime.log文件,定位nvml错误的具体原因。

内容的提问来源于stack exchange,提问作者DuckQueen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 16:40:27