在 CentOS 7 上使用 Docker 时,选择一个稳定且长期支持(LTS)的版本非常重要,以确保系统兼容性、安全性和维护性。以下是关于 Docker 版本选择的建议:
✅ 推荐最稳定的 Docker 版本:Docker CE 20.10.x 系列
特别是 Docker CE 20.10.24 或 20.10.25,这是 Docker 社区版(Community Edition)最后一个长期稳定支持的版本系列,具有以下优势:
为什么推荐 20.10.x?
- 长期稳定:20.10 是一个长期支持的版本线,经过大量生产环境验证。
- 与 CentOS 7 兼容性好:
- CentOS 7 内核较老(默认 3.10),Docker 20.10 对旧内核支持更好。
- 更新版本(如 23.x、24.x)要求更高内核版本或 systemd 版本,可能不兼容 CentOS 7。
- 官方支持时间长:Docker 20.10 支持到 2023 年底(虽然已停止更新,但仍是生产中最广泛使用的稳定版本)。
- 与 Kubernetes 兼容:如果你使用 Kubernetes,20.10 是最后一个支持 dockershim 的版本(K8s 1.24 之前)。
⚠️ 注意:Docker 官方已弃用 docker-ce 的旧版仓库命名
从 2023 年起,Docker 更换了仓库地址。安装时应使用新的源:
# 卸载旧版本
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
# 安装依赖
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装指定稳定版本(推荐 20.10.24)
sudo yum install -y docker-ce-20.10.24 docker-ce-cli-20.10.24 containerd.io
🔧 启动并设置开机自启
sudo systemctl enable docker
sudo systemctl start docker
❌ 不推荐使用更新版本(如 23.x、24.x、25.x)的原因:
- 要求 systemd v240+,而 CentOS 7 默认是 v219,升级 systemd 风险大。
- 依赖较新的
containerd和runc,可能引发兼容性问题。 - 官方虽支持,但在 CentOS 7 上部署复杂,容易出错。
✅ 更现代的替代方案(推荐用于新项目):
由于 CentOS 7 已于 2024 年 6 月停止维护(EOL),建议:
- 升级到 CentOS Stream 8/9 或 Rocky Linux 8/9。
- 使用 containerd 或 podman 替代 Docker(更轻量、更安全)。
- 在新系统上使用更新的 Docker 版本或直接使用 Kubernetes CRI。
总结
| 项目 | 推荐值 |
|---|---|
| 操作系统 | CentOS 7(短期)或升级到 Rocky Linux |
| Docker 版本 | Docker CE 20.10.24(最稳定) |
| 安装方式 | 使用官方 download.docker.com 仓库 |
| 长期建议 | 迁移到 Podman 或升级系统 |
如果你仍在使用 CentOS 7,Docker CE 20.10.24 是最稳定、最安全的选择。但建议尽快规划系统升级,以获得更好的支持和安全性。
轻量云Cloud