Ubuntu 20.04安装Docker及相关设置

 

 

 

在配置和部署深度学习训练环境时,往往会遇到conda创建的虚拟环境不好用的情况,这时使用Docker就可以解决很多麻烦。

本篇遵循Docker官网的安装指导进行操作。官网链接

首先说明,Docker Engine和Docker Desktop是不同的,这里使用常用的Engine。

1、安装前的准备工作

(1)确保系统满足安装条件

(2)如果之前安装了旧版本,需要卸载。

(3)支持的存储驱动

2、安装方法

  • 多数情况下,推荐使用创建Docker仓库,从仓库进行安装,这样安装以及升级都方便。
  • 还可以通过下载deb文件包,然后手动安装,以后也需要手动升级,没有网络的情况下可以使用该方法。
  • 使用便捷脚本进行安装。
  • 使用Ubuntu自身仓库安装,可能并不总是最新版本。

 (1)第一次安装需要创建Docker仓库,然后从仓库安装和更新Docker。

  •    更新apt 包索引,安装各种依赖包,从而允许apt通过HTTPS来使用仓库
   sudo apt-get update
   sudo apt-get install ca-certificates curl gnupg lsb-release

  •  添加Docker 官方GPG密钥
  sudo mkdir -p /etc/apt/keyrings
  curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

  •  使用以下命令来创建稳定仓库,
  echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

 (2)安装Docker Engine

  • 更新apt包索引,安装最新版本的Docker Engine,containerd,Docker Compose。安装指定版本,请见官网(此处省略)。
  sudo apt-get update
sudo
apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

 

  •  验证Docker已经正确安装完成,运行hello-world镜像。输出以下信息即说明安装OK。
  sudo docker run hello-world 

Docker安装后自动运行,同时docker group也创建完成,但还没有用户被添加进去,现在需要用sudo运行docker命令。

查看已有镜像,sudo docker images

查看运行及停止的所有容器,sudo docker ps -a

查看docker版本,docker -v

3、安装完成后的相关设置

(1)作为非root用户管理Docker

Docker守护进程绑定在Unix socket上而不是TCP端口,默认情况下Unix socket由root所有,其他用户只能使用sudo来访问。如果不想每次都用sudo来运行docker命令,创建docker组,然后添加用户到组。

  • 创建docker组

       sudo groupadd docker  

  •  添加用户到docker组

       sudo usermod -aG docker $USER 

  • 退出并再登陆以使组成员被刷新。在Linux上,也可以运行以下命令来使改变生效。

       newgrp docker  

  •  验证不带sudo来运行docker命令

        docker run hello-world   

 

 如果最初在添加用户到docker组之前运行了Docker的命令行命令,可能会报错,这说明你的  ~/.docker/  路径未用正确许可来创建。

 

要修复该问题,可以移除  ~/.docker/  路径(该路径会自动地重新创建,但任何自定义设定都会丢失),或者使用以下命令改变该路径的所有权和许可。

sudo chown "$USER":"$USER" /home/"$USER"/.docker -R
sudo chmod g+rwx "$HOME/.docker" -R

 

 

 

 

Enjoy it! 

posted @ 2022-05-26 15:29  BooTurbo  阅读(1990)  评论(0编辑  收藏  举报