OpenEuler安装docker

  • 下载 repo 配置文件

    shell 复制代码
    curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo
  • 修改安装源为国内地址,适用于访问国外网络受限的环境

    shell 复制代码
    sed -i 's#https://download.docker.com#https://mirrors.tuna.tsinghua.edu.cn/docker-ce#' /etc/yum.repos.d/docker-ce.repo
  • Docker 软件源支持的操作系统并不包含 openEuler,openEuler 的使用方式近似 CentOS,因此,修改软件源的配置,使用 centos 7 的软件源

    shell 复制代码
    sed -i 's#$releasever#7#g' /etc/yum.repos.d/docker-ce.repo
  • 清理旧缓存并生成新元数据

    shell 复制代码
    sudo dnf clean all
    sudo dnf makecache
  • 安装 Docker,使用 yum 安装 Docker 时,如果不指定版本,默认会安装当前最新版。

    shell 复制代码
    dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 有特殊版本要求的场景,可以指定版本号安装,例如生产环境

    shell 复制代码
    # 查询可用版本
    dnf list docker-ce --showduplicates | sort -r
    
    # 安装指定版本
    dnf install docker-ce-24.0.7 docker-ce-cli-24.0.7 docker-ce-rootless-extras-24.0.7 containerd.io docker-buildx-plugin docker-compose-plugin -y
  • 可选:自定义配置,修改 Docker 配置文件 /etc/docker/daemon.json

    shell 复制代码
    cat > /etc/docker/daemon.json << "EOF"
    {
      "data-root": "/data/docker",
      "registry-mirrors": [
         "https://docker.1ms.run",
        "https://docker.xuanyuan.me"
      ],
      "log-opts": {
        "max-size": "10m",
        "max-file":"3"
      },
      "storage-driver": "overlay2",
      "exec-opts": ["native.cgroupdriver=systemd"]
    }
    
    EOF
    • data-root:数据目录
    • registry-mirrors:常用的 Registry 代理服务器
    • log-opts: Log 文件最容量,默认是 10MB
    • exec-opts: 配置了 cgroup driver 使用 systemd,适用于 Kubernetes 场景,Docker 默认使用 cgroupfs
  • 启动 Docker 服务,并设置开机自启。

    shell 复制代码
    systemctl enable docker --now
  • 查看 Docker 信息

    shell 复制代码
     docker info
    • 验证拉取镜像,构建容器

      shell 复制代码
      docker run hello-world
  • 后续使用 OpenEuler 的 dnf 包管理器,可能会导致出现元数据失败的字眼,在 /etc/yum.repos.d 文件夹下,将CentOS-Base.repo和 docker-ce.repo改个名备份就好。执行完dnf 再改回去

  • 参考文章

  • 参考文章

相关推荐
AOwhisky2 小时前
Redis 学习笔记(第三期):持久化与主从复制
运维·数据库·redis·笔记·学习·云计算
c238562 小时前
Linux C++ 进度条进阶美化与工程化封装
linux·运维·服务器
李小白662 小时前
第四天-WEB服务器基本原理,IIS服务
运维·服务器·前端
2401_834636993 小时前
Nginx 从入门到实战:静态 / 动态站点、PHP 部署与反向代理全解析
运维·nginx·php
程序员酥皮蛋4 小时前
docker基础
docker·容器·eureka
aosky4 小时前
一台电脑配置多个 SSH Key 对应不同的 GitHub 账号
运维·ssh·github
云登指纹浏览器5 小时前
WebDriver反检测技术详解:如何让自动化脚本看起来像真实浏览器
运维·自动化·跨境电商
xmtxz5 小时前
计算机网络基础课程学习心得:从理论抽象到硬核实战的进阶之路
运维·学习
RisunJan5 小时前
Linux命令-pgrep (通过进程名查找进程 ID)
linux·运维
信创工程师-小杨6 小时前
Linux内网环境如何解决依赖的问题
linux·运维·服务器