在Ubuntu上安装Docker

安装docker是一件很简单的事儿,参照官方文档完全就OK。这里其实也是官方文档的搬运。当然,经过了实践,请享用。

前置条件

操作系统要求

截止当前,Docker支持以下版本的ubuntu

1
2
3
4
Ubuntu Jammy 22.04 (LTS)
Ubuntu Impish 21.10
Ubuntu Focal 20.04 (LTS)
Ubuntu Bionic 18.04 (LTS)

Docker支持以下几种架构:x86_64(或者amd64), armhf, arm64, s390x

卸载旧版本的docker

一般情况下,老版本的docker的名字可能为:docker, docker.io, docker-engine,在安装新版本之前,我们需要先卸载这些旧版本。
卸载很简单:

1
sudo apt-get remove docker docker-engine docker.io containerd runc

执行这条命令之后,如果apt-get提示找不到这些包,也是OK的。

有一些残留文件,并不会随着命令行的执行而删除,这些文件包含了:images, containers, volumes和networks。这些文件均被存储在:
/var/lib/docker/。如果你需要一个非常干净的环境,你亦可以删除它们,具体的操作方式,请参阅下一节。

彻底卸载docker残余,留系统一个清净

卸载docker引擎、命令行工具、容器和docker compose

1
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-compose-plugin

移除残留文件

这些残留文件包含:镜像、容器、卷以及自定义配置。如果要删除它们,你可以这么干:

1
2
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

以及,其他配置文件

如果过去,你有动过某些配置文件,你可能需要手工删除它们。

安装方式

我们可以试用很多方式去安装docker,使用哪种方式,取决于你的偏好和某些客观因素。

使用repository安装

在一台事先没有整过docker的机器上,你需要将docker的apt源加入repository

执行命令,对ubuntu进行升级:

1
sudo apt-get update

安装必要的组件

1
2
3
4
5
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release

将docker的官方GPG key写入你的机器

1
2
> sudo mkdir -p /etc/apt/keyrings
> curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

设置repository

1
2
3
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

安装docker引擎

更新apt包索引

1
sudo apt-get update

如果你在执行更新的过程中报错,你可能需要执行以下命令

1
2
> sudo chmod a+r /etc/apt/keyrings/docker.gpg
> sudo apt-get update

安装最新版本的docker引擎

1
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

ps, 这里的命令会给你安装docker compose。docker compose是一个docker编排工具,初学者必备。

验证你的安装是否成功

1
sudo docker run hello-world

此时,你可以执行以下命令,查看查看你的docker信息了

1
2
> sudo docker info
> sudo docker version

检验你的docker compose

1
docker compose

升级docker

如果你需要升级你的docker,请参阅这里:https://docs.docker.com/engine/install/ubuntu/#install-docker-engine