安装Docker

安装Docker

[Docker官方文档](Install Docker Engine on CentOS | Docker Docs)

飞书笔记

前提:Docker要求CentOS系统的内核版本高于3.10

uname -r #通过 uname -r 命令查看你当前的内核版本

image-20240818142109506

安装文档地址

image-20240818142239507

一、卸载旧版

首先如果系统中已经存在旧的Docker,则先卸载:

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

image-20240818141408969

yum可能会报告您未安装这些包。

二、配置Docker的yum库

  1. 首先要安装一个yum工具

    centos7在2024年6月30日,生命周期结束,官方不再进行支持维护,官方的YUM源也下线了,下线的方式是使yum的域名不解析。所以现在需要配置国内的YUM源

    sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    

    上述命令我用的时候用不了,下面是解决方法。

    参考文章

    1. 打开CentOS-Base.repo;

      sudo vi /etc/yum.repos.d/CentOS-Base.repo
      
    2. 将CentOS-Base.repo里的内容全部替换为:

      # CentOS-Base.repo  
      #  
      # 这里配置了CentOS的yum源,使用了阿里云和清华大学的镜像点。  
      #  
        
      [base]  
      name=CentOS-$releasever - Base  
      baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/  
              http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/os/$basearch/  
      gpgcheck=1  
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  
        
      #released updates   
      [updates]  
      name=CentOS-$releasever - Updates  
      baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/  
              http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/updates/$basearch/  
      gpgcheck=1  
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  
        
      #additional packages that may be useful  
      [extras]  
      name=CentOS-$releasever - Extras  
      baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/  
              http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/extras/$basearch/  
      gpgcheck=1  
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  
        
      #additional packages that extend functionality of existing packages  
      [centosplus]  
      name=CentOS-$releasever - Plus  
      baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/  
              http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/centosplus/$basearch/  
      gpgcheck=1  
      enabled=0  
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  
        
      #contrib - packages by Centos Users  
      [contrib]  
      name=CentOS-$releasever - Contrib  
      baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/  
              http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/contrib/$basearch/  
      gpgcheck=1  
      enabled=0  
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  
        
      # 使用failovermethod指定优先级,这里设置为随机(roundrobin),也可以改为priority并指定每个URL的优先级  
      failovermethod=roundrobin
      
    3. 清理YUM缓存并更新

      sudo yum clean all
      
      sudo yum makecache
      
      sudo yum update
      

      到此问题应该就能解决啦,继续配置yum库吧!

    安装yum工具:

    sudo yum install -y yum-utils
    

    image-20240818150753684

三、安装Docker引擎

  1. yum添加阿里云docker镜像仓库:

    yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    

    image-20240818152225113

  2. 列出docker版本【sort -r 降序排列】:

    yum list docker-ce --showduplicates | sort -r
    
  3. 指定docker版本进行安装【-23.0.6为指定版本,如果不指定版本则默认安装最新版本】:

    #指定版本安装
    yum install -y docker-ce-23.0.6
    
    #不指定版本安装
    yum install -y docker-ce
    
  4. 启动docker

    systemctl start docker
    
  5. 设置docker开机自启动

    systemctl enable docker
    
  6. 验证docker是否安装成功

    • 使用【docker version】【docker ps】【docker images】等任意docker命令都可以验证是否安装成功。

      image-20240818153409570

四、设置国内镜像【不设置可能会导致拉去镜像失败】

  1. 进入/etc/docker文件夹下,修改daemon.json。如果文件不存在则,创建该文件。

    image-20240818153800646

  2. daemon.json文件内容如下

    {
    "registry-mirrors" : [
        "https://jkfdsf2u.mirror.aliyuncs.com",
        "https://registry.docker-cn.com"
      ],
      "insecure-registries" : [
        "docker-registry.zjq.com"
      ],
      "log-driver": "json-file",
      "log-opts": {
        "max-size": "10m",
        "max-file": "10"
      },
      "data-root": "/data/docker"
    }
    
  3. 保存修改内容后重启docker

    systemctl daemon-reload
    systemctl restart docker
    
  4. 尝试拉取镜像,拉取速度会比没有配置时快很多.

    问题:虽然配置了国内源,但会出现镜像拉取超时:image-20240818155156998

    解决方案1:配置加速地址

    配置加速地址:适用于Ubuntu 16.04+、Debian 8+、CentOS 7+

    方式一:使用以下命令设置registry mirror:但是需要重启docker服务

    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
        "registry-mirrors": [
            "https://do.nark.eu.org",
            "https://dc.j8.work",
            "https://docker.m.daocloud.io",
            "https://dockerproxy.com",
            "https://docker.mirrors.ustc.edu.cn",
            "https://docker.nju.edu.cn"
        ]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker
    
    

    image-20240818160530305

    检查加速是否生效:
    查看docker系统信息 docker info,如果从输出结果中看到了 registry mirror 刚配置的内容地址,说明配置成功。

    尝试拉取镜像,成功!

    sudo docker run hello-world
    

    image-20240818160711569

    image-20240818160908451

    其它方案

  • 11
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值