【问题标题】:Cannot run nvidia-smi inside the docker without sudo没有 sudo 无法在 docker 内运行 nvidia-smi
【发布时间】:2022-08-19 09:22:39
【问题描述】:

我按照here 的说明安装了 nvidia-docker2。运行以下命令时,我将获得如图所示的预期输出。

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


+-----------------------------------------------------------------------------+
| NVIDIA-SMI 495.29.05    Driver Version: 495.29.05    CUDA Version: 11.5     |
|-------------------------------+----------------------+----------------------+
| 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 GeForce ...  On   | 00000000:0B:00.0  On |                  N/A |
| 24%   31C    P8    13W / 250W |    222MiB / 11011MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                           
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

但是,在没有 \"sudo\" 的情况下运行上述命令会导致我出现以下错误:

$ docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi
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: 
nvidia-container-cli: initialization error: load library failed: libnvidia-ml.so.1: 
cannot open shared object file: no such file or directory: unknown.

谁能帮我解决这个问题?

    标签: docker nvidia nvidia-docker


    【解决方案1】:

    将 docker 组添加到您的用户:

    sudo usermod -aG docker your_user
    

    更新:

    在这里查看https://github.com/NVIDIA/nvidia-docker/issues/539

    也许来自 cmets 的东西会帮助你。

    【讨论】:

    • 谢谢回答。但我已经在我的 docker 安装中这样做了。但它没有帮助,我仍然有错误。你还有什么推荐的吗?
    • 事实上,像$docker run hello-world 这样的命令不需要“sudo”就可以工作,这证实了我的用户在 docker 组中。但是我调用nvidia-smi 的问题仍未解决。
    【解决方案2】:

    尝试将“sudo”添加到您的 docker 命令中。 例如 sudo docker-compose ...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-02
      • 2019-11-27
      • 1970-01-01
      • 2018-10-26
      • 2019-03-01
      • 2022-07-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多