在 OpenCloudOS 8.6(基于 RHEL/CentOS 8 兼容生态,使用 dnf 和 systemd)上安装 Docker,官方推荐且最稳定的方式是安装 podman(默认容器运行时),但如果你明确需要 Docker Engine(即 dockerd + docker-cli),则需注意以下关键点:
⚠️ 重要前提:
OpenCloudOS 8.6 不提供官方 Docker CE 仓库支持(Docker 官方已停止对 RHEL 8/CentOS 8 的.rpm包更新,自 2023 年起仅支持 RHEL 9+)。
但可通过兼容方式安装 Docker CE 24.0.x(最后支持 RHEL 8 的版本) 或使用 社区维护的镜像源。
✅ 推荐方案一:安装 Docker CE 24.0.7(最后兼容 RHEL 8 的稳定版)
步骤如下:
-
更新系统并安装必要依赖
sudo dnf update -y sudo dnf install -y dnf-plugins-core yum-utils device-mapper-persistent-data lvm2 -
添加 Docker 官方 YUM 源(使用存档版配置)
创建/etc/yum.repos.d/docker-ce.repo:sudo tee /etc/yum.repos.d/docker-ce.repo << 'EOF' [docker-ce-stable] name=Docker CE Stable - $basearch baseurl=https://download.docker.com/linux/centos/8/x86_64/stable enabled=1 gpgcheck=1 gpgkey=https://download.docker.com/linux/centos/gpg repo_gpgcheck=1 EOF🔍 注:Docker 官方已将
centos/8目录归档保留,该路径仍可访问(截至 2024 年中有效)。若未来失效,可改用国内镜像(见下方备选)。 -
安装 Docker CE 24.0.7(显式指定兼容版本)
# 查看可用版本(确认 24.0.7 是否存在) dnf list docker-ce --showduplicates | sort -r # 安装指定版本(避免自动升级到不兼容的 25.x) sudo dnf install -y docker-ce-24.0.7-1.el8 docker-ce-cli-24.0.7-1.el8 containerd.io -
启动并启用服务
sudo systemctl enable docker sudo systemctl start docker sudo systemctl status docker # 验证运行正常 -
验证安装
sudo docker run --rm hello-world # 若提示 permission denied,将当前用户加入 docker 组: sudo usermod -aG docker $USER newgrp docker # 刷新组权限(或重新登录) docker run --rm hello-world # 无需 sudo
🌐 备选:使用阿里云镜像源(若官方源不可达)
若 download.docker.com 访问慢或失败,替换 baseurl 为阿里云镜像(同步存档):
sudo sed -i 's|https://download.docker.com/linux/centos/8|x86_64/stable|https://mirrors.aliyun.com/docker-ce/linux/centos/8/x86_64/stable|g' /etc/yum.repos.d/docker-ce.repo
✅ 阿里云镜像站已同步 Docker CE 24.0.x for CentOS 8,可靠稳定。
❌ 不推荐/不可行方案
dnf install docker→ 安装的是旧版docker(1.13,RHEL 8 自带,已废弃,无dockerd、不支持现代镜像)。- 尝试安装 Docker CE 25.x+ → 会因依赖
libseccomp >= 2.5.0等问题失败(RHEL 8 默认libseccomp-2.4.3),强行升级可能破坏系统安全策略。 - 使用
curl get.docker.com脚本 → 该脚本默认拉取最新版(25.x),在 OpenCloudOS 8.6 上会失败,不建议。
✅ 替代建议:优先考虑 Podman(OpenCloudOS 原生推荐)
OpenCloudOS 8.6 默认预装并深度集成 Podman(无守护进程、rootless 友好、Docker CLI 兼容):
# 检查是否已安装
podman --version
# 若未安装:
sudo dnf install -y podman
# 使用别名模拟 docker 命令(可选)
sudo alias docker=podman
# 或永久生效:echo "alias docker=podman" >> ~/.bashrc && source ~/.bashrc
✅ 优势:无需 root、更安全、与 systemd 集成更好、完全兼容 docker run, docker build(v4.0+)等常用命令。
✅ 附:验证 OpenCloudOS 8.6 系统信息
cat /etc/os-release | grep -E "(NAME|VERSION)"
# 应输出类似:NAME="OpenCloudOS" VERSION="8.6"
uname -r # 确认内核 ≥ 4.18(满足要求)
如需进一步帮助(例如:配置镜像提速器、启用 cgroup v2、离线安装、或迁移到 Podman),欢迎继续提问!🚀
CLOUD云