在 Ubuntu 上安装 Docker 引擎 (Engine)

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

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

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

操作系统要求

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

  • Ubuntu 23.04 - Lunar
  • Ubuntu 22.10 - Kinetic
  • Ubuntu 22.04 (LTS) - Jammy
  • Ubuntu 20.04 (LTS) - Focal
  • Ubuntu 18.04 (LTS) - Bionic

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

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

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

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

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

  • docker.io
  • docker-compose
  • 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 podman-docker containerd runc; do sudo apt-get remove $pkg; done

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

卸载docker时,存储在 /var/lib/docker/ 中的映像、容器、卷和网络不会自动删除。如果你想从全新的的安装开始,并且要删除现有的所有数据,请参考下面:

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

安装方法

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

设置存储库

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

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

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

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

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

echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] 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 Engine、container 和 Docker Compose

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

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:24.0.0-1~ubuntu.22.04~jammy
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,请按照上面的安装说明,选择要安装的新版本。


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

标签

发表评论