在欧拉系统(openEuler)和 CentOS 上部署 Docker 的操作步骤有一些差异,主要体现在:
- 系统源和包管理器的差异(尤其是 openEuler 使用
dnf/yum但软件源不同) - 内核版本与容器技术的兼容性
- 官方支持策略和推荐安装方式(如是否推荐使用官方 Docker 安装脚本)
以下是两者部署 Docker 的详细对比和操作步骤:
一、CentOS 上部署 Docker
1. 系统要求
- CentOS 7 / 8 / Stream(已停止维护的 CentOS Linux 可用,推荐 CentOS Stream)
- 启用 EPEL 源或使用官方 Docker 源
2. 安装步骤
# 1. 更新系统
sudo yum update -y
# 2. 安装依赖工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 3. 添加 Docker 官方仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 4. 安装 Docker CE
sudo yum install -y docker-ce docker-ce-cli containerd.io
# 5. 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
# 6. 验证安装
sudo docker --version
sudo docker run hello-world
注意:CentOS Stream 可能需要调整仓库地址为
$releasever或手动指定版本。
二、openEuler 上部署 Docker
1. 系统要求
- openEuler 20.03 LTS / 22.03 LTS 等
- 默认使用
dnf包管理器(兼容 yum 命令) - 推荐使用华为云镜像源或官方源
2. 安装方式一:通过系统自带仓库安装(推荐)
openEuler 官方仓库中已包含 Docker 社区版(docker-ce),可直接安装:
# 1. 更新系统
sudo dnf update -y
# 2. 安装 Docker
sudo dnf install -y docker-ce
# 3. 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
# 4. 验证
sudo docker --version
sudo docker run hello-world
3. 安装方式二:使用官方 Docker 脚本(不推荐)
Docker 官方安装脚本(get.docker.com)可能不完全兼容 openEuler,因为其检测逻辑主要针对主流发行版(Ubuntu、Debian、CentOS/RHEL)。使用时可能出现错误。
若仍想尝试:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
❌ 不推荐,可能导致依赖冲突或无法识别系统版本。
三、关键差异对比
| 对比项 | CentOS | openEuler |
|---|---|---|
| 包管理器 | yum / dnf | dnf(yum 兼容) |
| 软件源 | 官方 + Docker CE 仓库 | 华为官方源 + 自建社区源 |
| Docker 支持方式 | 推荐添加 Docker 官方 repo | 官方源已内置 docker-ce |
| 内核特性 | 标准 Linux 内核 | 针对国产化优化,支持 CGroup v2、安全增强等 |
| 推荐安装方式 | 添加 Docker 官方仓库 | 直接 dnf install docker-ce |
| 容器运行时兼容性 | Docker、containerd | 支持 Docker,也推荐使用 iSulad(轻量级容器引擎) |
| 是否支持一键脚本 | ✅ 支持 get.docker.com |
⚠️ 不稳定,可能失败 |
四、注意事项
-
权限问题:
- 两者都建议将用户加入
docker组以避免每次使用sudo:sudo usermod -aG docker $USER重新登录生效。
- 两者都建议将用户加入
-
防火墙与 SELinux:
- CentOS 中 SELinux 可能影响容器网络,需注意配置。
- openEuler 默认关闭 SELinux,更简洁。
-
替代方案:iSulad(openEuler 推荐)
- openEuler 更推荐使用华为开源的轻量级容器引擎 iSulad,更适合国产化环境。
- 安装方式:
sudo dnf install -y isulad sudo systemctl start isulad
总结
| 系统 | 推荐安装方式 | 特点 |
|---|---|---|
| CentOS | 添加 Docker 官方仓库后 yum install |
成熟稳定,社区支持好 |
| openEuler | 直接 dnf install docker-ce |
原生支持,无需额外源,适配国产生态 |
✅ 结论:
在 CentOS 上部署 Docker 需要手动添加 Docker 官方仓库;而在 openEuler 上可直接通过系统源安装,更加便捷且原生支持。此外,openEuler 更鼓励使用 iSulad 等国产化容器方案。
云小栈