docker 报错:不能选择设备驱动 could not select device driver 的解决方法(实测有效)

Ubuntu安装完docker引擎后,在创建容器的时候指定 --gpus all,出现报错如下:

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

解决该问题还需要安装Nvidia-docker,本篇参照Nvidia官网

NVIDIA Container Toolkit 在许多Linux发行版上都可用并且支持不同的容器引擎(不只Docker)。

1、准备工作

 开始前确保已安装NVIDIA驱动,

(1)平台要求:

 (2)Docker安装见上篇 Ubuntu 20.04安装Docker及相关设置

2、安装NVIDIA Container Toolkit

   (1) 创建包仓库和GPG key:

复制代码
$  distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
       && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
       && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
             sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
             sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
复制代码
   (2) 更新包列表之后安装 nvidia-docker2 包(以及依赖)
sudo apt-get update
sudo apt-get install -y nvidia-docker2

 

(3)重启Docker daemon 来完成设定默认运行时后的安装。

sudo systemctl restart docker

(4)通过运行一个基础的CUDA container测试安装是否有效。

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

   得到如下输出表明成功。

 

3、最后再次创建容器指定 --gpus all ,问题解决,容器创建成功。

 

 

 
 
 
 
 
 
 Enjoy it!
posted @ 2024-04-13 10:24  huakai201  阅读(5195)  评论(0编辑  收藏  举报