「这是我参与2022首次更文挑战的第8天,活动详情查看:2022首次更文挑战」。
前言
本文为我之前在CSDN平台上的一篇博客记录。原链接为:Docker 安装与配置使用GPU教程
背景
由于学习需要,在复现一些深度学习模型时,实验室的服务器上要配置Docker环境。然而,在配置过程中,踩了一些坑,特此记录。
Docker安装
我们可以直接使用官方的安装脚本自动进行安装
使用官方安装脚本自动安装
安装命令如下:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
也可以使用国内 daocloud 一键安装命令:
curl -sSL https://get.daocloud.io/docker | sh
安装完成后解决Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied问题
在完成Docker安装后,当我们运行基础的Docker命令,比如查看所有的Docker容器:
docker ps
时,可能会遇到报错信息:
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied
通过网上查找资料发现,此时最简单的方式是重启一下Docker。
方法一:重启docker服务
使用命令
sudo systemctl restart docker
但我重启之后,Docker依旧报同样的错误。后来找到一个可行的解决方案,即修改docker文件权限,方法如下:
方法二:修改docker文件权限
使用chmod命令
sudo chmod 666 /var/run/docker.sock
使用这个命令后,我的Docker就可以使用了。
安装后的GPU资源使用
由于我要复现的代码需要使用GPU。但直接复现时,报错如下:
docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]
解决方法记录如下。
解决使用GPU报错docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].
查找资料后发现需要安装nvidia-container-toolkit即可,使用如下命令
distribution=$(. /etc/os-release;echo $ID$VERSION_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
sudo systemctl restart docker
配置并重启Docker后,我的所有环境问题就都解决了。
参考
-
How to fix docker: Got permission denied while trying to connect to the Docker daemon socket | DigitalOceanwww.digitalocean.com/community/q…
-
Docker 使用GPU 错误之Error could not select device driver "" with capabilities: [[gpu]]zhuanlan.zhihu.com/p/373493938