Ubuntu 20.04.5 LTS系统下安装Docker CE 26.1.4的完整指南

 更新时间:2025年09月11日 10:07:05   作者:ζั͡山 ั͡有扶苏 ั͡✾  
这篇文章主要为大家详细介绍了如何在Ubuntu 20.04.5 LTS系统下安装Docker CE 26.1.4,文中的示例代码讲解详细,需要的小伙伴可以了解下

版本选择说明

为什么选择 Docker CE 26.1.4

1.版本稳定性和成熟度

  • Docker CE 26.1.4 是 2024 年 5 月发布的稳定版本,经过了充分的测试和验证
  • 相比最新的 28.x 版本,26.1.4 在生产环境中更加稳定可靠
  • 避免了过于新版本可能存在的未知 bug 和兼容性问题

2.ARM64 架构优化

  • Docker 26.1.4 对 ARM64(aarch64)架构有良好的优化支持
  • 在 Ubuntu 20.04 LTS 系统上经过验证,兼容性表现优秀
  • 支持多架构镜像构建和运行,适合 ARM 服务器环境

3.生态系统兼容性

  • 与主流 Kubernetes 版本(1.27-1.29)完全兼容
  • 支持当前所有主要的容器镜像和工具链
  • 与 CI/CD 平台(Jenkins、GitLab CI、GitHub Actions)兼容性好

4.Ubuntu 20.04 LTS 系统适配

  • 在 Ubuntu 20.04.5 LTS (Focal Fossa) 系统上完美兼容
  • 与系统的 systemd、网络、存储子系统良好集成
  • Ubuntu 官方源和第三方源都提供良好支持

系统要求

  • 操作系统: Ubuntu 20.04.5 LTS (Focal Fossa) 或更高版本
  • 架构: aarch64 (ARM64)
  • 内核版本: 5.4+ (推荐)
  • 权限: root 或 sudo 权限
  • 网络: 互联网连接(用于下载软件包)

安装步骤

1. 系统准备

首先更新系统包并安装必要的依赖:

sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release

2. 添加 Docker CE 官方 GPG 密钥

创建密钥存储目录并添加清华大学镜像源的 GPG 密钥:

# 创建密钥目录
sudo mkdir -p /etc/apt/keyrings

# 下载并添加 Docker GPG 密钥(使用清华大学镜像源)
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

3. 添加 Docker CE 软件源

添加适用于 ARM64 架构的 Docker CE 软件源:

echo "deb [arch=arm64 signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu focal stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. 更新软件包索引

sudo apt update

5. 查看可用的 Docker 版本

查看可用的 Docker CE 版本和相关组件版本:

# 查看 Docker CE 可用版本
apt-cache madison docker-ce

# 查看 containerd.io 可用版本
apt-cache madison containerd.io

# 查看 Docker Compose Plugin 可用版本
apt-cache madison docker-compose-plugin

6. 安装指定版本的 Docker CE

安装 Docker CE 26.1.4 及相关组件:

sudo apt install -y \
  docker-ce=5:26.1.4-1~ubuntu.20.04~focal \
  docker-ce-cli=5:26.1.4-1~ubuntu.20.04~focal \
  containerd.io=1.6.28-1 \
  docker-compose-plugin=2.17.3-1~ubuntu.20.04~focal

注意: 如果提示版本不存在,请根据步骤 5 的输出调整版本号

7. 启动并配置 Docker 服务

# 启动 Docker 服务
sudo systemctl start docker

# 设置开机自启
sudo systemctl enable docker

# 验证服务状态
sudo systemctl status docker

8. 验证 Docker 安装

# 查看 Docker 版本
docker --version

# 查看详细信息
docker info

# 测试运行容器
sudo docker run hello-world

9. 添加用户到 docker 组(可选)

避免每次使用 sudo 运行 Docker 命令:

# 添加当前用户到 docker 组
sudo usermod -aG docker $USER

# 重新加载用户组(或重新登录)
newgrp docker

# 测试不使用 sudo 运行
docker ps

Docker 配置优化

10. 创建 Docker 配置文件

创建 /etc/docker/daemon.json 配置文件进行优化:

sudo mkdir -p /etc/docker

cat <<EOF | sudo tee /etc/docker/daemon.json > /dev/null
{
  "data-root": "/var/lib/docker",
  "registry-mirrors": [
    "https://hub.geekery.cn/",
    "https://ghcr.geekery.cn",
    "https://wbzql24b.mirror.aliyuncs.com",
    "https://hub.1panel.dev"
  ],
  "insecure-registries": [
    "*.*.*.*:86",
    "*.*.*.*:86"
  ],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "5",
    "compress": "true"
  },
  "storage-driver": "overlay2",
  "live-restore": true,
  "features": {
    "buildkit": true
  },
  "experimental": false,
  "default-cgroupns-mode": "host",
  "bip": "172.168.100.1/24",
  "default-address-pools": [
    {
      "base": "172.168.0.0/16",
      "size": 24
    }
  ],
  "fixed-cidr": "172.168.100.0/25"
}
EOF

配置说明:

  • 添加了更多国内镜像源以提高下载速度
  • 可根据实际需求调整镜像源和网络配置
  • insecure-registries 配置可根据实际私有仓库地址修改

11. 应用配置并重启 Docker

# 重新加载 systemd 配置
sudo systemctl daemon-reload

# 重启 Docker 服务
sudo systemctl restart docker

# 验证服务状态
sudo systemctl status docker

12. 验证配置生效

# 验证镜像源配置
docker info | grep -A 10 "Registry Mirrors"

# 验证网络配置
ip addr show docker0

# 验证存储驱动
docker info | grep "Storage Driver"

# 测试容器网络
docker run --rm alpine ip addr show eth0

配置说明

镜像源配置

  • hub.geekery.cn: 高速国内 Docker Hub 镜像
  • ghcr.geekery.cn: GitHub Container Registry 镜像
  • wbzql24b.mirror.aliyuncs.com: 阿里云镜像源
  • registry.docker-cn.com: Docker 中国官方镜像
  • docker.mirrors.ustc.edu.cn: 中科大镜像源

网络配置

  • bip: 设置 docker0 网桥为 172.168.100.1/24
  • fixed-cidr: 限制容器 IP 范围为 172.168.100.0/25
  • default-address-pools: 自定义网络地址池

日志配置

  • max-size: 单个日志文件最大 100MB
  • max-file: 保留最多 5 个日志文件
  • compress: 启用日志压缩

其他优化

  • live-restore: 支持 Docker 重启时容器继续运行
  • buildkit: 启用新的构建引擎
  • overlay2: 使用 overlay2 存储驱动(Ubuntu 20.04 默认支持)

常见问题排查

1. 权限问题

如果遇到权限错误,确保用户在 docker 组中:

groups $USER | grep docker

2. 网络配置不生效

如果网络配置没有生效,尝试删除并重建 docker0 网桥:

sudo systemctl stop docker
sudo ip link delete docker0 2>/dev/null || true
sudo systemctl start docker

3. 镜像拉取速度慢

验证镜像源是否正确配置:

docker info | grep -A 5 "Registry Mirrors"

4. 查看详细日志

如果遇到启动问题,查看详细日志:

sudo journalctl -u docker.service -f

5. Swap 限制警告

如果看到 “WARNING: No swap limit support”,这是正常的,不影响 Docker 功能。如需修复:

sudo nano /etc/default/grub
# 添加: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash cgroup_enable=memory swapaccount=1"
sudo update-grub
sudo reboot

6. Ubuntu 20.04 特定问题

内核版本检查

# 确认内核版本符合要求
uname -r
# 应该是 5.4.0 或更高版本

systemd 版本

# 检查 systemd 版本
systemctl --version
# Ubuntu 20.04 使用 systemd 245+

版本信息

  • Docker CE: 26.1.4
  • containerd.io: 1.6.28-1
  • docker-compose-plugin: 2.17.3
  • 架构: aarch64 (ARM64)
  • 系统: Ubuntu 20.04.5 LTS (Focal Fossa)
  • 内核: 5.4.0-216-generic

升级 Docker

如果需要升级到更新版本:

# 查看可用版本
apt-cache madison docker-ce

# 升级到指定版本
sudo apt install docker-ce=<新版本号> docker-ce-cli=<新版本号>

# 或升级到最新版本
sudo apt update
sudo apt upgrade docker-ce docker-ce-cli containerd.io docker-compose-plugin

卸载 Docker(如需要)

# 停止服务
sudo systemctl stop docker docker.socket

# 卸载包
sudo apt remove -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

# 清理数据(注意:会删除所有镜像和容器)
sudo rm -rf /var/lib/docker
sudo rm -rf /etc/docker

# 移除用户组(可选)
sudo delgroup docker

注意:

  • 本指南适用于 Ubuntu 20.04.5 LTS 系统的 aarch64 架构
  • 安装过程中请确保网络连接正常
  • 生产环境建议在测试环境先验证配置

到此这篇关于Ubuntu 20.04.5 LTS系统下安装Docker CE 26.1.4的完整指南的文章就介绍到这了,更多相关Ubuntu安装Docker内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker连接超时的5种快速解决方法总结

    Docker连接超时的5种快速解决方法总结

    在实际的开发和测试过程中,模拟网络请求超时是非常有必要的,因为在真实的生产环境中,网络请求超时是常见的情况之一,这篇文章主要介绍了Docker连接超时的5种快速解决方法,需要的朋友可以参考下
    2025-08-08
  • docker实现重新打tag并删除原tag的镜像

    docker实现重新打tag并删除原tag的镜像

    这篇文章主要介绍了docker实现重新打tag并删除原tag的镜像,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 详解Docker Registry之删除镜像、垃圾回收

    详解Docker Registry之删除镜像、垃圾回收

    本篇文章主要介绍了详解Docker Registry之删除镜像、垃圾回收,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • 详解docker 制作mysql镜像并自动安装脚本

    详解docker 制作mysql镜像并自动安装脚本

    这篇文章主要介绍了docker mysql镜像制作并自动安装脚本,主要包括centos7环境下 一键制作mysql docker镜像并安装,对docker 制作mysql镜像shell脚本感兴趣的朋友一起看看吧
    2022-05-05
  • Docker一键部署springcloud项目的方法

    Docker一键部署springcloud项目的方法

    本文主要介绍了Docker一键部署springcloud项目的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • Docker图文详解

    Docker图文详解

    今天小编就为大家分享一篇关于Docker图文详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • docker常用命令总结之安装、镜像、容器基本操作

    docker常用命令总结之安装、镜像、容器基本操作

    这篇文章主要介绍了docker常用命令总结之安装、镜像、容器基本操作,需要的朋友可以参考下
    2017-05-05
  • docker run和start的区别说明

    docker run和start的区别说明

    这篇文章主要介绍了docker run和start的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • docker镜像alpine中安装oracle客户端

    docker镜像alpine中安装oracle客户端

    这篇文章主要为大家介绍了docker镜像alpine中安装oracle客户端,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • docker修改未启动容器的配置信息操作

    docker修改未启动容器的配置信息操作

    这篇文章主要介绍了docker修改未启动容器的配置信息操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12

最新评论