Docker是一个开放源代码的容器化平台,可让您快速构建,测试和部署应用程序。
docker的镜像实例称为容器,容器一般是应用程序的运行时,并包含软件需要运行的所有内容。
Docker是现代软件开发和DevOps持续集成和部署管道的重要组成部分。本教程介绍如何在Ubuntu 20.04安装Docker。
安装 Docker
在Ubuntu 20.04安装Docker非常简单。我们将启用Docker存储库,导入存储库GPG密钥,然后安装Docker。
首先,运行命令sudo apt update
更新软件包索引,然后运行命令apt remove runc
删除runc。
最后运行curl
命令导入docker仓库的GPG密钥并安装docker运行命令sudo apt install docker-ce docker-ce-cli containerd.io -y
。
sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y
sudo apt-get remove docker docker.io containerd runc -y
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y
当脚本运行完成时,你Ubuntu计算机已经安装Docker的最新版本。安装完成后,Docker服务也将会自动启动。
当发布新版本的Docker时,Docker都会随着系统更新而升级,当然您可以手动运行sudo apt update && sudo apt upgrade
来更新/升级docker。
您可以运行命令sudo systemctl status docker
来检查Docker服务的状态来以验证Docker是否正确的安装。
默认情况下,Docker从Docker Hub合并镜像。这是一项基于云的注册服务。
Docker在合并镜像时默认使用的是Docker Hub的地址,但在GFW之下,Docker Hub下载速度会非常慢。
在不使用代理加速的情况下,虽然还能使用。但是使用镜像加速会好很多,朝内也有很多docker镜像,有些是有限制的。总的来说还是阿里云镜像好用。
由于文章篇幅不宜过多,你可参考我们教程使用阿里云的仓库配置Docker镜像。
不使用sudo运行docker
默认情况下,只有root用户,具有sudo权限的用户以及docker组成员可以执行docker命令。
但是docker我们经常使用的命令,没有必须每次运行docker都使用或者切换docker用户。
如果在要以非root用户或者docker用户运行Docker,您需要将您的用户添加到docker组中。
docker组的成员可以运行docker,而不必每次使用sudo命令切换用户运行。你可使用usermod
命令将当前用户追加到docker组中。
sudo usermod -aG docker $USER
newgrp docker
$USER
是保存您当前用户名的环境变量,newgrp
命令使usermod命令更改在当前终端中生效。
现在您可以在不添加sudo
的情况下执行docker
命令,让我们将运行Docker官方Hello-World测试容器docker container run hello-world
以是否正确配置。
该命令将下载测试镜像,然后运行它,它将打印Hello from Docker消息。由于没有长时间运行的进程,因此容器在打印完消息后将停止。
卸载 Docker
卸载Docker之前,最好删除所有容器,镜像,卷和网络。否则你计算机将会存在大量docker镜像,docker的临时数据。占用着你磁盘空间。
当然你也可以保留数据直接卸载Docker。如果你保留Docker的数据我们建议你运行命令sudo apt remove containerd.io docker-compose-plugin docker-ce
卸载Docker。
如果你删除了Docker所有数据,可以使用sudo apt purge containerd.io docker-compose-plugin docker-ce
卸载Docker。这也会把Docker的配置文件删除。
sudo apt remove containerd.io docker-compose-plugin docker-ce
安装旧版本Docker
要安装旧版本的Docker,你需要先使用apt list
列出Docker储存库中的所有可用版本。
由于Docker是由docker-ce,docker-ce-cli,containerd.io组件构建,因此如果你在安装某个指定版本docker-ce,你必须安装相对应docker-ce-cli,containerd.io版本。
你可以使用sudo apt list -a docker-ce docker-ce-cli containerd.io
同时列出docker的三个组建的版本。
在apt list
命令的结果中将会向你展示已经安装的版本,你应该会注意到已安装的版本后面有[installed]
的标记。其它则为未安装的版本。
例如我们需要安装之前docker-ce 20.10.16
的版本,那么docker-ce-cli
对应的版本是20.10.16,containerd.io
对应的版本是1.6.4-1
。
由于每次更新系统或者发布新版本的Docker时,Docker都会随着系统更新而升级,你可能想阻止Docker升级,而不影响系统升级。
如果你需要要阻止Docker升级或者更新,可使用apt-mark hold
命令将docker-ce标记为禁止更新。docker将会一直停留你安装的版本。
sudo apt install docker-ce=5:20.10.16~3-0~ubuntu-focal
sudo apt install containerd.io=5:20.10.16~3-0~ubuntu-focal
sudo apt install docker-ce-cli=1.6.4-1
sudo apt-mark hold docker-ce
结论
我们已向您展示了如何在Ubuntu 20.04安装Docker。 要了解Docker的更多信息,请查看官方Docker文档。如有任何疑问,请在下面发表评论。