无法运行 nvidia docker

无法运行 nvidia docker

过去几天,我一直在努力让我的 GPU 通过 VNC 工作。我终于做到了,最后才意识到,当使用 GPU 运行时,我的 docker 不再工作了。无论 VNC 服务器是否运行,都会发生这种情况。

sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi  
docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"process_linux.go:432: running prestart hook 0 caused \\\"error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: initialization error: nvml error: insufficient permissions\\\\n\\\"\"": unknown.

Ubuntu 20.04,

Nvidia 418.152(但我曾尝试过 455 和 418)

Titan X nvidia-smi输出

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.152.00   Driver Version: 418.152.00   CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  TITAN X (Pascal)    Off  | 00000000:01:00.0  On |                  N/A |
| 23%   30C    P8    10W / 250W |     62MiB / 12192MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0       959      G   /usr/lib/xorg/Xorg                            59MiB |
+-----------------------------------------------------------------------------+

我已经安装nvidia-container-toolkit并重新启动了守护进程。我还清除了docker并重新安装了它。但没有任何帮助。

请帮忙!任何帮助我都感激不尽!

答案1

有一个简单的方法可以解决这个问题。问题不在于 nvidia-docker,而在于 nvidia-container-toolkit。您需要更改执行 nvidia-container-toolkit 的用户。为此,您需要在位于 /etc/nvidia-container-runtime/config.toml 的文件中取消注释或添加 user = "root:video"

我希望这会有所帮助。

相关内容