在 Ubuntu 上安装 Docker 引擎 (Engine)

在 Ubuntu 上安装 Docker 引擎 (Engine)插图

要开始使用 Ubuntu 上的 Docker Engine,请确保您满足先决条件,然后按照安装步骤操作。

如果使用 ufw 或 firewalld 来管理防火墙设置,请注意:当您使用 Docker 公开容器端口时,这些端口会绕过您设定的的防火墙规则。

操作系统要求

要安装 Docker Engine,您需要这些 Ubuntu 之一的 64 位版本:

  • Ubuntu Noble 24.04 (LTS)
  • Ubuntu Jammy 22.04 (LTS)
  • Ubuntu Focal 20.04 (LTS)

Docker Engine for Ubuntu 兼容 x86_64(或 amd64)、armhf 和 arm64 架构。

卸载旧版本(全新安装跳过此处)

在安装 Docker Engine之前,您必须首先卸载有冲突的软件包。

发行版维护人员在他们的存储库中提供 Docker 包的非官方分发。您必须先卸载这些软件包,然后才能安装Docker Engine 的官方版本。

要卸载的非官方软件包是:

  • docker.io
  • docker-compose
  • docker-compose-v2
  • docker-doc
  • podman-docker

此外,Docker Engine 依赖于containerd 和 runc。Docker Engine 将这些依赖捆绑为一个捆绑包:containerd.io。如果您以前安装过 containerd 或 runc,请卸载它们,以避免与 Docker Engine 捆绑的版本发生冲突。

运行以下命令卸载所有冲突的程序包:

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

apt-get 可能会报告您没有安装这些软件包。

卸载 Docker 时,存储在其中的映像、容器、卷和网络不会被自动删除。如果您想全新安装,并希望清理任何现有数据,请阅读文章后面卸载 Docker Engine 部分

安装方法

在新主机上首次安装 Docker Engine 之前,您需要设置 Docker 存储库。之后,您可以从存储库中安装并更新 Docker。

设置存储库

1、更新 apt 包索引并安装包,以允许 apt 通过 HTTPS 使用存储库:

sudo apt-get update
sudo apt-get install ca-certificates curl

2、添加 Docker 的官方 GPG 密钥:

sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

3、使用以下命令设置存储库:

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

注意:如果您使用 Ubuntu 衍生发行版,例如 Linux Mint,则可能需要使用 Ubuntu_CODENAME 而不是VERSION_CODENAME。

安装 Docker Engine

1、更新 apt 包索引:

sudo apt-get update

2、安装 Docker 软件包

要安装最新版本,请运行:

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

要安装特定版本的 Docker Engine,请首先列出存储库中可用的版本:

apt-cache madison docker-ce | awk '{ print $3 }'

输出示例:
5:24.0.2-1~ubuntu.22.04~jammy
5:24.0.1-1~ubuntu.22.04~jammy
5:24.0.0-1~ubuntu.22.04~jammy
5:23.0.6-1~ubuntu.22.04~jammy
5:23.0.5-1~ubuntu.22.04~jammy
5:23.0.4-1~ubuntu.22.04~jammy
5:23.0.3-1~ubuntu.22.04~jammy
5:23.0.2-1~ubuntu.22.04~jammy
5:23.0.1-1~ubuntu.22.04~jammy
...

选择所需的版本并安装:

VERSION_STRING=5:27.1.1-1~ubuntu.24.04~noble
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

3、启动 Docker Engine,并设置成开机自启动:

sudo systemctl start docker
sudo systemctl enable docker

4、查看已安装的 Docker 版本:

sudo docker version

5、通过运行映像验证 Docker 引擎安装是否成功:hello-world

sudo docker run hello-world

此命令下载测试映像并在容器中运行。当容器运行时,它会打印一条确认消息并退出。

升级 Docker Engine

要升级 Docker Engine,请按照安装说明的步骤 2 进行操作。 选择要安装的新版本。

1、卸载 Docker Engine、CLI、containerd 和 Docker Compose 软件包:

sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras

2、主机上的映像、容器、卷或自定义配置文件 不会自动删除。要删除所有镜像、容器和卷,请执行以下操作:

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

您必须手动删除任何已编辑的配置文件。


本文转载自:https://docs.docker.com/engine/install/ubuntu/

标签

发表评论