Ubuntu 安装 Docker Engine

本文最后更新于 2024年11月5日 晚上

【参考】Install Docker Engine on Ubuntu | Docker Documentation: https://docs.docker.com/engine/install/ubuntu/

【参考】Docker CE 镜像源站-阿里云开发者社区 https://developer.aliyun.com/article/110806
【规范】模仿 Docker 文档,Ubuntu, Docker 首字母都采用大写。

【环境】

阿里云 ecs.t5-lc2m1.nano ubuntu_20_04_x64_20G_alibase_20210521.vhd

1. 清理旧版本

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

2. 安装方法

  1. 方法一:【推荐】适合联网安装
    1. 建立 Docker 仓库
    2. 从 Docker 仓库安装或更新
  2. 方法二:适合离线安装
    1. 下载 DEB 软件包
    2. 手动安装或更新

3. 方法一 从仓库安装

3.1. 建立仓库

3.1.1. 更新 apt 包索引,并安装相关依赖

1
2
sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release

3.1.2. 添加 Docker 官方 GPG 公钥

1
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

3.1.3. 建立仓库(stable)

1
2
# 可以在 stable 参数后添加 nightly 或 test
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3.2. 安装 Docker Engine

以下方法二选一

3.2.1. 安装最新版本的 Docker Engine

1
2
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io

3.2.2. 安装特定版本的 Docker Engine

  1. 列举仓库中可用的版本

    1
    apt-cache madison docker-ce
    • 返回示例
    1
    2
    3
    4
    5
    6
    7
    docker-ce | 5:20.10.7~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
    docker-ce | 5:20.10.6~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
    docker-ce | 5:20.10.5~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
    docker-ce | 5:20.10.4~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
    docker-ce | 5:20.10.3~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
    docker-ce | 5:20.10.2~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
    docker-ce | 5:20.10.1~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
  2. 从第二列中选择并安装特定的版本

    1
    sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
  • 5:20.10.7~3-0~ubuntu-focal 为例

    1
    sudo apt install docker-ce=5:20.10.7~3-0~ubuntu-focal docker-ce-cli=5:20.10.7~3-0~ubuntu-focal containerd.io

4. 方法二 从软件包安装

4.1. 下载 .deb 软件包

前往 https://download.docker.com/linux/ubuntu/dists/ 根据需求选择 Ubuntu 版本后进入 \pool 目录,选择 Docker Engine 的版本(Ubuntu 发行版名称对照列表

  • e.g.

    1
    2
    3
    wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/containerd.io_1.4.6-1_amd64.deb
    wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce-cli_20.10.7~3-0~ubuntu-focal_amd64.deb
    wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce_20.10.7~3-0~ubuntu-focal_amd64.deb

4.2. 安装 Docker Engine

1
sudo dpkg -i [软件包的存储位置]
  • e.g.

    1
    2
    3
    4
    # 需顺序安装
    sudo dpkg -i containerd.io_1.4.6-1_amd64.deb
    sudo dpkg -i docker-ce-cli_20.10.7~3-0~ubuntu-focal_amd64.deb
    sudo dpkg -i docker-ce_20.10.7~3-0~ubuntu-focal_amd64.deb

5. 启动 Docker 服务

1
2
3
4
5
6
sudo systemctl start docker
systemctl status docker

# wsl2 中可以使用
sudo service docker start
service docker status

6. 测试 Docker Engine

1
sudo docker run hello-world

若返回一段相关信息并退出,则 Docker Engine 安装正常

1
2
Hello from Docker!
This message shows that your installation appears to be working correctly.

【扩展】GPG入门教程 - 阮一峰的网络日志: http://www.ruanyifeng.com/blog/2013/07/gpg.html


Ubuntu 安装 Docker Engine
https://blog.cc01cc.cn/2023/03/02/linux-docker-ubuntu-install/
作者
零一/cc01cc(zeo)
发布于
2023年3月2日
许可协议