加油
努力

在欧拉系统和CentOS上部署Docker的操作步骤有哪些不同?

在欧拉系统(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 ⚠️ 不稳定,可能失败

四、注意事项

  1. 权限问题

    • 两者都建议将用户加入 docker 组以避免每次使用 sudo
      sudo usermod -aG docker $USER

      重新登录生效。

  2. 防火墙与 SELinux

    • CentOS 中 SELinux 可能影响容器网络,需注意配置。
    • openEuler 默认关闭 SELinux,更简洁。
  3. 替代方案: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 等国产化容器方案。

云服务器