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

  • Post author:
  • Post category:其他




问题:

在服务器上在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选择对应的命令

  • 问题定位后不要总是想着博客的解决方案就完全可以解决自己问题,也不要总想着一条命令就可以解决问题

  • 多参考官网



版权声明:本文为weixin_39925939原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。