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 再改回去

  • 参考文章

  • 参考文章

相关推荐
江湖有缘16 小时前
零基础入门:使用 Docker 快速部署 Organizr 个人主页
java·服务器·docker
wangjialelele16 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发
广州中轴线16 小时前
OpenStack on Kubernetes 生产部署实战(十三)
容器·kubernetes·openstack
HypoxiaDream17 小时前
LINUX-Ext系列⽂件系统
linux·运维·服务器
小毛驴85017 小时前
Linux curl 命令用法
linux·运维·chrome
李斯啦果17 小时前
【Linux】Linux目录配置
linux·运维·服务器
AI+程序员在路上17 小时前
linux下线程中pthread_detach与pthread_join区别
linux·运维·服务器
logocode_li17 小时前
说透 Linux Shell:命令与语法的底层执行逻辑
linux·运维·ssh
来鸟 鸣间17 小时前
Linux下3个so库之间的关系
linux·运维
释怀不想释怀17 小时前
Linux文件上传(rz)和下载(sz)压缩(tar.gz)和解压(zip)
linux·运维·服务器