核心是通过包管理器从官方仓库拉取并安装新版本,ubuntu需先配置docker官方源、更新索引,再执行sudo apt-get install docker-ce docker-ce-cli containerd.io升级,最后验证版本与服务状态。
升级 docker engine 到最新稳定版,核心是**通过包管理器从官方仓库拉取并安装新版本**,而不是手动替换二进制文件。不同 linux 发行版操作略有差异,但逻辑一致:更新源 → 查看可用版本 → 安装(或升级)最新版。
Ubuntu 系统升级 Docker Engine
适用于 Ubuntu 20.04/22.04 等:
- 确保已配置官方 Docker 仓库(若未配,需先执行
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -及add-apt-repository步骤) - 更新本地包索引:
sudo apt-get update - 执行升级(自动选择仓库中最新稳定版):
sudo apt-get install docker-ce docker-ce-cli containerd.io - 验证版本:
docker --version和dockerd --version
CentOS/RHEL 系统升级 Docker Engine
适用于 CentOS 7/8、RHEL 8/9:
- 确认已启用 Docker 官方仓库(推荐阿里云镜像源以提升速度):
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo - 刷新缓存:
sudo yum makecache fast - 查看当前安装版本和可升级版本:
sudo yum list docker-ce --showduplicates | sort -r - 直接升级到仓库中最新版:
sudo yum install -y docker-ce docker-ce-cli containerd.io
(如提示“已是最新”,可加--enablerepo=docker-ce-stable强制检查)
升级后关键检查项
升级完成不能只看版本号,还需确认运行状态与基础功能:
- 重启服务并设为开机自启:
sudo systemctl restart docker && sudo systemctl enable docker - 验证守护进程是否健康:
sudo systemctl status docker(应显示 active (running)) - 非 root 用户能否执行命令(如已加 docker 组):
docker run hello-world - 检查存储驱动是否仍为
overlay2(尤其 CentOS 7):docker info | grep "Storage Driver",若异常需检查/etc/docker/daemon.json
注意事项与常见问题
避免“升级即成功”的错觉:
- 不要跳过
sudo apt-get update或yum makecache—— 否则系统可能仍用旧缓存,无法识别新版 - 生产环境不建议无保留直接升级到最新版(如 26.x),可先在测试机验证兼容性;CentOS 7 推荐锁定在 24.0.x 或 20.10.x
- 升级后若容器启动失败,先查日志:
sudo journalctl -u docker -n 50 --no-pager - Docker Compose 插件(v2)通常随新版 engine 自动安装;如缺失,可单独安装:
sudo apt-get install docker-compose-plugin(Ubuntu)或sudo yum install docker-compose-plugin(CentOS)











