在使用 yum 安装 Docker 时,欧拉(EulerOS / openEuler) 和 CentOS 在源配置上存在显著区别,主要体现在系统定位、软件仓库来源以及推荐的安装方式上。以下是详细的对比:
一、系统背景
| 项目 | CentOS | 欧拉 (openEuler) |
|---|---|---|
| 开发者 | Red Hat 社区 | 华为主导的开源社区 |
| 基础 | RHEL 衍生 | 自主研发(部分基于 Fedora/RHEL 技术) |
| 包管理器 | yum / dnf | yum(早期版本)或 dnf(新版本) |
| 软件生态 | 兼容 RHEL 生态 | 自有生态 + 部分兼容 RHEL |
二、Docker 安装方式与源配置的区别
1. CentOS:推荐使用官方 Docker CE 源
CentOS 用户通常从 Docker 官方仓库安装 Docker CE。
✅ 配置 Docker 官方 YUM 源:
# 安装 yum-utils 工具
sudo yum install -y yum-utils
# 添加 Docker 官方仓库
sudo yum-config-manager
--add-repo
https://download.docker.com/linux/centos/docker-ce.repo
然后安装:
sudo yum install docker-ce docker-ce-cli containerd.io
⚠️ 注意:Docker 官方不再维护
docker-ce的旧版支持(如 CentOS 8+ 受到影响),建议使用podman或切换至containerd。
2. 欧拉(openEuler):不推荐使用 Docker 官方源
由于 openEuler 是独立发行版,Docker 官方未提供针对 openEuler 的官方仓库。因此不能直接使用 https://download.docker.com/linux/centos/... 这类源。
✅ 正确做法:使用 openEuler 官方源或 OBS 构建源
方法一:使用 openEuler 自带仓库(推荐)
openEuler 默认仓库中可能包含 docker 或替代运行时(如 iSulad)。
# 更新缓存
sudo yum update
# 查看是否有 docker 包
yum search docker
# 安装(如果存在)
sudo yum install docker
注意:不同版本 openEuler 中是否包含 Docker 包有所不同。例如,某些版本默认推荐使用 iSulad(轻量级容器引擎)替代 Docker。
方法二:使用第三方构建源(如 OBS)
一些社区在 Open Build Service (OBS) 上为 openEuler 构建了 Docker 包:
例如添加华为云镜像站或社区维护的 Docker 源(需谨慎验证安全性):
# /etc/yum.repos.d/docker-openEuler.repo
[docker-openEuler]
name=Docker for openEuler
baseurl=https://repo.openeuler.org/openEuler-22.03-LTS/EPOL/main/x86_64/
enabled=1
gpgcheck=1
gpgkey=https://repo.openeuler.org/openEuler-22.03-LTS/OS/x86_64/RPM-GPG-KEY-openEuler
然后安装:
sudo yum install docker-engine
注:包名可能是
docker-engine或moby-engine,具体取决于构建方式。
三、关键区别总结
| 对比项 | CentOS | openEuler(欧拉) |
|---|---|---|
| 是否支持 Docker 官方源 | ✅ 支持(x86_64) | ❌ 不支持 |
| 推荐安装方式 | 添加 download.docker.com 源 |
使用系统自带源或 OBS 源 |
| 默认容器运行时 | Docker CE | 可能是 iSulad(华为轻量容器) |
| 包名称 | docker-ce, containerd.io |
docker, docker-engine, moby-engine 等 |
| 安全性要求 | 启用 GPG 校验 | 必须使用可信源(如华为官方镜像) |
四、建议
- CentOS 用户:优先使用 Docker 官方源,注意 CentOS 8+ 的 EOL 问题。
- openEuler 用户:
- 优先尝试系统自带仓库安装
docker。 - 若无 Docker,考虑使用
iSulad(更适配欧拉系统)。 - 如必须使用 Docker,可查找由 华为或可信社区维护的 OBS 构建包,避免随意引入外部源。
- 优先尝试系统自带仓库安装
五、参考链接
- openEuler 软件仓库:https://repo.openeuler.org
- openEuler 文档:https://www.openeuler.org/zh/docs/
- Docker 官方安装指南(CentOS):https://docs.docker.com/engine/install/centos/
如有具体 openEuler 版本(如 22.03 LTS、23.09),可进一步提供精准的源配置方案。
云小栈