在华为开源操作系统 OpenEuler 上安装 Docker,由于 OpenEuler 使用的是 yum 或 dnf 包管理器(基于 RHEL/CentOS 的生态),但默认仓库中可能不包含 Docker 官方版本,因此推荐使用 Docker 官方脚本安装方式 或 手动配置仓库 的方式来安装。
以下是详细的安装步骤:
✅ 方法一:使用官方脚本安装 Docker(推荐)
这是最简单、最通用的方法。
1. 更新系统
sudo dnf update -y
2. 安装依赖工具
sudo dnf install -y yum-utils device-mapper-persistent-data lvm2
yum-utils提供yum-config-manager,用于管理仓库。
3. 添加 Docker 的官方 YUM 仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
注意:OpenEuler 虽然不是 CentOS,但与 RHEL 生态兼容,因此可以使用 CentOS 的 Docker 仓库。但需注意架构和版本兼容性(建议 OpenEuler 20.03 LTS 或更新版本)。
4. 安装 Docker Engine
sudo dnf 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
如果提示权限问题,可将当前用户加入
docker组:sudo usermod -aG docker $USER然后重新登录或执行
newgrp docker生效。
✅ 方法二:使用 OpenEuler 自带软件源(可选)
某些版本的 OpenEuler 可能包含 docker 或 moby(Docker 的上游项目)。
sudo dnf search docker
sudo dnf install -y moby-engine
moby-engine是 Docker 的开源核心。安装后命令仍为docker。
启动方式相同:
sudo systemctl start docker
sudo systemctl enable docker
⚠️ 常见问题与注意事项
-
内核版本兼容性
OpenEuler 使用较新的 Linux 内核,一般兼容 Docker。但建议使用 OpenEuler 20.03 LTS SP2 或更高版本。 -
SELinux 或防火墙问题
如遇到运行容器异常,可尝试临时关闭 SELinux:sudo setenforce 0或调整策略。
-
使用国内镜像提速(可选)
编辑/etc/docker/daemon.json:{ "registry-mirrors": ["https://<你的提速器>.mirror.aliyuncs.com"] }然后重启 Docker:
sudo systemctl restart docker
✅ 总结
| 方法 | 说明 |
|---|---|
| 官方脚本 + CentOS 仓库 | 推荐,安装最新稳定版 Docker |
安装 moby-engine |
使用 OpenEuler 源,版本可能稍旧但更稳定 |
✅ 推荐命令一键安装(适用于 OpenEuler 20.03+):
sudo dnf update -y &&
sudo dnf install -y yum-utils &&
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo &&
sudo dnf install -y docker-ce docker-ce-cli containerd.io &&
sudo systemctl start docker &&
sudo systemctl enable docker &&
sudo docker run hello-world
如需安装 Docker Compose,可参考:
sudo dnf install -y docker-compose
# 或使用 pip
sudo dnf install -y python3-pip && pip3 install docker-compose
如有具体 OpenEuler 版本(如 22.03 LTS),可进一步优化安装方式。欢迎提供版本信息获取更精准指导。
ECLOUD博客