CentOS7安装Docker教程(含最新镜像地址)

文章目录

  • [1 安装前必读](#1 安装前必读)
  • [2 安装Docker的详细步骤](#2 安装Docker的详细步骤)
  • [3 配置镜像加速](#3 配置镜像加速)

1 安装前必读

在安装 Docker 之前,先说一下配置,我这里是Centos7 Linux 内核:官方建议 3.10 以上,3.8以上貌似也可。

注意:本文的命令使用的是 root 用户登录执行,不是 root 的话所有命令前面要加 sudo

使用 root 权限更新 yum 包(生产环境中此步操作需慎重)

yum -y update

如果之前安装过,先卸载旧版本的docker。此步骤跳过。

2 安装Docker的详细步骤

  • 安装需要的软件包, yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖

    shell 复制代码
    yum install -y yum-utils device-mapper-persistent-data lvm2
  • 设置yum源

    设置一个yum源,下面两个都可用

    shell 复制代码
    # (中央仓库)
    yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo
    #(阿里仓库)
    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

    此步骤设置失败也不影响,只是下载速度会慢。

  • 查看可用版本有哪些

    shell 复制代码
    yum list docker-ce --showduplicates | sort -r
  • 选择一个版本进行安装: yum install docker-ce-版本号

    不写版本号默认下载最新版本,如下:

    shell 复制代码
    yum -y install docker-ce

    如果想安装指定版本的docker,后面跟上版本号,格式如下:

    yum -y install docker-ce-24.0.6

    安装成功如下图所示:

  • 关闭系统防火墙。如果是生产环境开放指定端口

    Docker应用需要用到各种端口,逐一去修改防火墙设置。非常麻烦,因此建议大家直接关闭防火墙,但是公司生产环境不能这样做。

    shell 复制代码
    # 关闭
    systemctl stop firewalld
    # 禁止开机启动防火墙
    systemctl disable firewalld
  • 启动 Docker 并设置开机自启

    shell 复制代码
    systemctl start docker
    systemctl enable docker
  • 查看docker版本,验证是否安装成功

    shell 复制代码
    docker version

3 配置镜像加速

docker官方镜像仓库网速较差,有的甚至访问不了,我们需要设置国内镜像服务。但现在绝大多数正规的镜像网站停用了。

亲测可用的仓库:https://hub.atomgit.com/repos

设置仓库:

shell 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://hub.atomgit.com/repos"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

上面命令配置中:"registry-mirrors": ["https://hub.atomgit.com/repos"],后面的地址可以替换成认可可用的镜像仓库地址。

之前阿里云镜像仓库文档:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors。但现在不一定能用。

其他剩余可用仓库可在这自己尝试:https://linux.do/t/topic/114516

相关推荐
小和尚同志5 分钟前
29.4k!使用 1Panel 来管理你的服务器吧
linux·运维
帽儿山的枪手7 分钟前
为什么Linux需要3种NAT地址转换?一探究竟
linux·网络协议·安全
就叫飞六吧9 天前
基于keepalived、vip实现高可用nginx (centos)
python·nginx·centos
shadon1789 天前
回答 如何通过inode client的SSLVPN登录之后,访问需要通过域名才能打开的服务
linux
小米里的大麦9 天前
014 Linux 2.6内核进程调度队列(了解)
linux·运维·驱动开发
退役小学生呀9 天前
三、kubectl使用详解
云原生·容器·kubernetes·k8s
程序员的世界你不懂9 天前
Appium+python自动化(三十)yaml配置数据隔离
运维·appium·自动化
算法练习生9 天前
Linux文件元信息完全指南:权限、链接与时间属性
linux·运维·服务器
忘了ʷºᵇₐ9 天前
Linux系统能ping通ip但无法ping通域名的解决方法
linux·服务器·tcp/ip
浩浩测试一下9 天前
渗透测试指南(CS&&MSF):Windows 与 Linux 系统中的日志与文件痕迹清理
linux·运维·windows·安全·web安全·网络安全·系统安全