在 欧拉系统(EulerOS 或 openEuler) 和 CentOS 上安装 Docker 的流程总体上是类似的,因为它们都是基于 RPM 包管理系统 的 Linux 发行版。不过由于系统内核、软件源、默认配置等方面可能存在差异,所以在具体操作时还是有一些区别和注意事项。
一、相同点
- 都使用 yum/dnf 安装
- 都可以使用
yum或dnf来安装 Docker。
- 都可以使用
- 安装方式类似
- 基本步骤包括:添加仓库、更新软件包、安装 Docker 引擎、启动服务等。
- Docker CE/EE 支持
- Docker 社区版(CE)或企业版(EE)都可以在这两个系统上运行。
二、不同点
| 比较项 | CentOS | EulerOS / openEuler |
|---|---|---|
| 官方支持 | Docker 官方提供详细的安装文档支持 | 对国产化系统的支持可能需要依赖社区或华为镜像源 |
| 软件源配置 | 使用官方 Docker 仓库(如 https://download.docker.com/linux/centos) |
可能需要使用国内镜像(如华为云、清华源)来提速安装 |
| 依赖库版本 | 依赖库版本较为通用 | 可能会自带一些优化过的组件(如内核、cgroup 等) |
| 内核版本 | 一般为标准上游内核 | EulerOS 可能使用定制内核(如鲲鹏优化) |
| 兼容性问题 | 与 Docker 兼容性较好 | 在某些特定硬件平台(如 ARM64)上更优 |
| SELinux / AppArmor | 默认启用 SELinux | EulerOS 也可能使用 SELinux,但可能配置不同 |
| 安全策略限制 | 标准的 SELinux 策略 | 有些环境可能启用了更严格的安全策略 |
| 镜像提速器推荐 | 不强制推荐 | 华为云 EulerOS 推荐使用其提供的提速源 |
三、安装流程对比示例
1. CentOS 安装 Docker
# 安装依赖
sudo yum install -y yum-utils
# 添加 Docker 官方仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker 引擎
sudo yum install -y docker-ce docker-ce-cli containerd.io
# 启动并开机自启
sudo systemctl start docker
sudo systemctl enable docker
2. openEuler/EulerOS 安装 Docker
方法一:使用华为云镜像源(推荐)
# 安装依赖
sudo dnf install -y dnf-plugins-core
# 添加华为云 Docker 镜像源(适用于 openEuler)
sudo dnf config-manager --add-repo https://mirrors.huaweicloud.com/repository/conf/openEuler-docker-x86_64.repo
# 安装 Docker
sudo dnf install -y docker
# 启动并设置开机启动
sudo systemctl start docker
sudo systemctl enable docker
方法二:使用官方 Docker 源(如果可用)
同 CentOS 安装方式。
四、注意事项
- ARM64 架构支持:
- 如果你在使用鲲鹏处理器(ARM64),openEuler 更适合,Docker 也提供了 ARM64 架构的镜像。
- 容器运行时选择:
- EulerOS 可能默认使用
containerd或其他运行时,注意检查/etc/docker/daemon.json。
- EulerOS 可能默认使用
- SELinux 问题:
- 如果 SELinux 导致容器无法运行,可尝试临时关闭或调整策略:
sudo setsebool -P docker_can_network=1
- 如果 SELinux 导致容器无法运行,可尝试临时关闭或调整策略:
- 日志路径差异:
- Docker 日志位置通常一致(
journalctl -u docker),但日志格式或级别可能因发行版略有不同。
- Docker 日志位置通常一致(
五、总结建议
| 场景 | 推荐做法 |
|---|---|
| 生产部署、国产化适配 | 使用 EulerOS + 华为云源安装 Docker |
| 学习测试、通用场景 | 使用 CentOS + Docker 官方源安装 |
| 跨架构开发(x86/ARM) | 使用 EulerOS(ARM64 优化更好) |
| 性能调优 | EulerOS 提供更多定制选项(尤其针对华为软硬件) |
如果你有具体的系统版本(比如 EulerOS 2.9、openEuler 22.03 LTS、CentOS 7 或 8),我可以提供更精准的安装脚本和注意事项。欢迎继续提问!
云计算导航