华为欧拉系统(openEuler)安装 Docker 容器完整教程

🔥 前言:在国产化操作系统日益普及的当下,华为欧拉系统(openEuler)凭借其稳定性和安全性受到不少用户青睐。但 Docker 官方暂未提供对 openEuler 的原生支持,不过好在 openEuler 与 CentOS 底层架构兼容,我们可以通过适配 CentOS 的安装源来实现 Docker 部署。本文基于 openEuler 22.03 LTS 版本实测,详细讲解安装全过程。

一、安装前的准备工作

🔍 确认系统版本

首先确保你的系统是 openEuler 22.03 LTS 版本(其他版本可能存在兼容问题),执行以下命令查看:

复制代码
cat /etc/openEuler-release

若输出类似openEuler release 22.03 LTS的信息,则符合安装条件。

🗑️ 卸载旧版本 Docker(如有)

如果系统中曾安装过 Docker,需先卸载旧版本避免冲突:

复制代码
yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

二、系统网络配置

安装 Docker 需要稳定的互联网连接,因此需先配置 DNS 确保网络通畅。

  • 编辑 DNS 配置文件:

    vi /etc/resolv.conf

  • 按i进入编辑模式,添加以下 DNS 服务器地址:

    nameserver 114.114.114.114 # 国内通用DNS
    nameserver 8.8.8.8 # 谷歌公共DNS

  • 按Esc键退出编辑,输入:wq保存并退出。

  • 测试网络连接:

    ping www.baidu.com # 出现回显信息说明网络正常

⚠️ 注意:/etc/resolv.conf可能被 NetworkManager 自动覆盖,若后续网络异常,可通过网卡配置文件永久设置 DNS:

编辑网卡文件(如/etc/sysconfig/network-scripts/ifcfg-eth0),添加:

复制代码
DNS1=114.114.114.114
DNS2=8.8.8.8

保存后重启网络:systemctl restart network

三、Docker 安装步骤详解

📦 配置 Docker 仓库(两种方法选其一)

方法一:手动创建仓库文件
  • 新建并编辑 Docker 仓库配置文件:

    vi /etc/yum.repos.d/docker-ce.repo

  • 添加以下内容(使用华为云镜像源,速度更快):

    [docker-ce-stable]

    name=Docker CE Stable - basearch baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/7/basearch/stable
    enabled=1
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg

  • 输入:wq保存退出。

方法二:自动下载并配置仓库

🚀 安装 Docker 组件

  • 更新 yum 缓存:

    yum makecache # 生成元数据缓存,加快后续安装速度

  • 安装 Docker 核心组件:

    yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

❗ 常见问题:若安装时提示container-selinux依赖缺失,先执行以下命令安装依赖:

复制代码
yum install -y container-selinux

✅ 启动并验证 Docker

  • 启动 Docker 服务:

    systemctl start docker

  • 设置开机自启动:

    systemctl enable docker # 避免系统重启后Docker需要手动启动

  • 验证安装版本:

    docker --version # 输出类似Docker version 24.0.7, build xxx的信息即正常

  • 查看运行状态:

    systemctl status docker # 显示active (running)说明服务正常运行

四、安装后的优化配置

⚡ 配置镜像加速

国内拉取 Docker 镜像速度较慢,推荐配置国内镜像源加速:

五、常见问题排查

  1. Docker 启动失败:执行journalctl -u docker查看详细日志,根据错误信息排查问题。
  2. SELinux 限制:部分场景下 SELinux 会阻止 Docker 运行,可临时关闭:setenforce 0;如需永久关闭,编辑/etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,重启系统生效。
  3. 网络问题:若拉取镜像超时,检查 DNS 配置和镜像源地址是否正确。
复制代码
相关推荐
分布式存储与RustFS2 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
codeejun2 天前
每日一Go·MySQL-5、锁机制全解析
云原生·golang
张洛闻Eren2 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
不吃香菜kkk、2 天前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
ChaITSimpleLove2 天前
云原生性能对决:JDK21虚拟线程+GraalVM vs .NET10/11 技术栈深度对比
微服务·云原生·serverless·graalvm native·native aot·runtime async·.net11/java21
春天花会开1313 天前
Supabase 自部署 Edge Functions 超时从 60s 延长到 360s 完整复盘
运维·云原生
ysu_03143 天前
【2026】K8s GPU调度空占怎么解?Kueue与Volcano Gang配置
云原生·kubernetes·gpu算力·volcano·ai基础设施·kueue·gang scheduling
天天喝旺仔4 天前
分布式服务容错实战:用 Sentinel 实现限流、熔断与降级
分布式·微服务·云原生·sentinel
逐流人5 天前
Containerd容器管理实战:从架构原理到nerdctlcrictl工具链
linux·运维·云原生·容器·云计算·containerd
运维开发王义杰5 天前
跨项目直连数据库:是架构反模式,还是现实的工程妥协?
云原生