docker: Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]报错

问题:

在服务器上在docker镜像里使用GPU时,运行docker --gpus all ImageName出现以下报错:

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

问题定位

服务器nvidia驱动已安装,GPU使用没问题,但是docker无法使用GPU,这时就需要检查一下NVIDIA Container Toolkit是否已安装。NVIDIA Container Toolkit允许用户构建和运行GPU加速Docker容器(docker 版本 19之后,18之前使用nvidia-docker命令),所以只有安装了这个之后,才可以在docker内使用GPU。

解决方案

根据你的系统,在官网上查找对应的安装命令。
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker
官网写的非常详细,一步步走下来就可以,网上的教程大多命令不全或者不对应你的系统。

踩过的坑

apt-get和yum

遇到这个问题时,根据一些博客,已经定位到是因为NVIDIA Container Toolkit没有安装,但这些博客中给出的都是使用apt-get安装Toolkit的命令,而我的系统是CentOS,安装方式是yum。这个时候我就自己跳进了一个坑,花了很多时间在网上搜如何安装apt-get,并在看到有个回复说在CentOS上安装apt-get没有意义时,选择了忽略。最后才意识到,需要根据你的系统去选择相应的安装命令,而nvidia官网已经给出了各个系统的详细指导。

结论:

  • 根据你的系统默认安装方式是yum还是apt-get选择对应的命令
  • 问题定位后不要总是想着博客的解决方案就完全可以解决自己问题,也不要总想着一条命令就可以解决问题
  • 多参考官网

你可能感兴趣的:(docker,docker,容器)