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

创建docker容器报错:
Error response from daemon: could not select device driver "" with capabilities: [[gpu]]Error: failed to start containers:ubuntu20?

这表明 Docker 容器无法识别或访问 GPU 设备有关

1、首先确保宿主机的nvidia-smi 显示正确,即正确安装了 NVIDIA Docker Toolkit

2、这一步很重要,执行下面命令如图会显示OK成功:

`distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \`

`&& curl -s -L`

[`https://nvidia.github.io/nvidia-docker/gpgkey`](https://nvidia.github.io/nvidia-docker/gpgkey)

`| sudo apt-key add - \`

`&& curl -s -L`

[`https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list`](https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list)

`| sudo tee /etc/apt/sources.list.d/nvidia-docker.list`

在这里插入图片描述
这个源下载时间可能会比较久,稍微等待一会,确保网络通信正常

3、执行命令

sudo apt-get update
sudo apt-get install -y nvidia-docker2(可忽略)

4、重启docker:sudo systemctl restart docker
注意检查docker --version版本要在 19.03 及以上

5、最后执行命令sudo apt-get install -y nvidia-container-toolkit 安装了nvidia-container-toolkit`成功就能解决问题

检查是否成功输入which nvidia-container-runtime 如果显示/usr/bin/nvidia-container-runtime则没问题

否则安装会报错 E: Unable to locate package nvidia-container-toolkit(上面好了则忽略)
重复一次
distribution=$(. /etc/os-release;echo I D ID IDVERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit

在这里插入图片描述
不然就离线去 https://github.com/NVIDIA/nvidia-docker 找到 nvidia-container-toolkit 对应的 .deb 文件下载后

sudo dpkg -i nvidia-container-toolkit_<version>_amd64.deb
sudo systemctl restart docker

补充别的可能报错:

1、Docker Daemon 使用 NVIDIA Runtime,添加docker源。编辑 Docker 的配置文件 /etc/docker/daemon.json,
放入

{
  "runtimes": {
    "nvidia": {
      "path": "nvidia-container-runtime",
      "runtimeArgs": []
    }
  },
  "default-runtime": "nvidia"
}

{
“registry-mirrors”: [“https://”]
}
提供可参考中国镜像加速器也是放到 /etc/docker/daemon.json,然后重启docker

2、如果报错docker: Error response from daemon: no command specified.
在docker run最后加一个bash即可

  • 比如一开始是
    sudo docker run -d --name LZ_ubuntu20 --gpus all -p 10026:22 -p 14004:4000 -v /data/LZ:/home ubuntu20_base:latest
    改为
    sudo docker run -d --name LZ_ubuntu20 --gpus all -p 10026:22 -p 14004:4000 -v /data/LZ:/home ubuntu20_base:latest bash
  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker是一种开源的容器化平台,可以帮助开发者将应用程序和其依赖环境打包成一个独立、可移植的容器。然而,当运行Docker命令时,有时会遇到错误信息:"docker: error response from daemon: could not select device driver "" with c"。 这个错误通常是由于操作系统或Docker配置问题引起的。可能的原因和解决方法如下: 1. 操作系统不兼容:该错误可能是由于操作系统版本过低或过高导致的。请确保您使用的操作系统版本符合Docker的要求。您可以通过查看Docker官方文档或论坛来了解您的操作系统是否支持。 2. Docker配置问题:这个错误也可能是由于Docker的配置问题引起的。您可以尝试重新配置Docker,确保正确设置了Docker的驱动程序。您可以在Docker配置文件中找到有关驱动程序的设置,并按照官方文档指导进行配置。 3. 硬件驱动问题:这个错误也可能是由于硬件驱动问题引起的。如果您在某些比较特殊的硬件环境中运行Docker,可能需要额外安装或配置相关的硬件驱动。请参考硬件供应商的文档或支持资源来了解如何正确配置硬件驱动。 总结来说,错误"docker: error response from daemon: could not select device driver "" with c"通常是由于操作系统或Docker配置问题引起的。您可以通过确保操作系统兼容性、重新配置Docker或解决硬件驱动问题来解决这个错误。如果问题仍然存在,您可以参考Docker官方文档或论坛寻求进一步的支持和帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值