GPU 在 docker 中不可用

问题描述 投票:0回答:3

更新 GPU 驱动程序后,我无法在 Docker 上运行 GPU。 当我在主机环境(Centos)中运行

nvidia-smi
时,GPU被识别。

docker run --gpus all -it -v $(pwd):/home/workspace test /bin/bash

ERRO[0000] error waiting for container: context canceled 
docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].

根据我的研究,更新GPU驱动程序似乎会删除这些设置,因此我参考了NVIDIA容器工具包站点并再次执行了安装过程,但上述错误仍然存在。为了确定起见,我还重新启动了系统,但这并没有解决问题。 我该怎么办?

docker run -it --gpus all nvidia/cuda:11.4.0-base-ubuntu20.04 nvidia-smi

这也产生了上述错误。

linux docker cuda centos gpu
3个回答
3
投票

对我来说最重要的是遵循 Docker 的说明如何访问 nvidia gpu

  1. 按照说明
    nvidia-container-runtime
    添加到
    apt
  2. apt-get 安装 nvidia-container-runtime
  3. 确保
    nvidia-container-runtime-hook
    可从 $PATH 访问:
    which nvidia-container-runtime-hook
  4. 重启

2
投票

假设您遵循良好的安装程序:

现在,来自教程:如何使用 docker 连接 NVIDIA GPU https://www.howtogeek.com/devops/how-to-use-an-nvidia-gpu-with-docker-containers/

使用 nvidia 基础映像而不是您的映像

test

docker run -it --gpus all nvidia/cuda:11.4.0-base-ubuntu20.04 nvidia-smi /bin/bash

如果运行不好,您的图像

test
需要进一步调试


0
投票
$ sudo docker run -it --gpus all nvidia/cuda:11.4.0-base-ubuntu20.04 nvidia-smi /bin/bash
Unable to find image 'nvidia/cuda:11.4.0-base-ubuntu20.04' locally
docker: Error response from daemon: manifest for nvidia/cuda:11.4.0-base-ubuntu20.04 not found: manifest unknown: manifest unknown.
See 'docker run --help'.

无法从 docker 注册表中找到该镜像

© www.soinside.com 2019 - 2024. All rights reserved.