Centos 7安装docker

第一步:更新系统软件包

bash 复制代码
sudo yum update -y
  • 作用:相当于给你的系统做一次"全面体检+升级"。
  • 为什么要做:安装新软件前,先把系统现有的软件包更新到最新版本,避免旧版本软件导致兼容性问题。
  • -y 的含义:自动回答"yes",不用手动确认。

第二步:安装 yum 工具包

bash 复制代码
sudo yum install -y yum-utils
  • 作用:安装一个"软件管家工具箱"。
  • 为什么要做 :后面需要通过 yum-config-manager 工具添加 Docker 的软件源,这个工具就包含在 yum-utils 包里。

第三步:卸载旧版 Docker(如果有)

bash 复制代码
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  • 作用:清理系统里可能存在的旧版 Docker,防止和新版本打架。
  • 小贴士
    • 如果从未安装过 Docker,这步会提示"没有找到软件包",属于正常现象。
    • 如果之前装过 Docker,这里会彻底卸载旧版本。

第四步:添加 Docker 官方软件源(国内镜像加速版)

bash 复制代码
sudo yum -y install dnf-plugins-core
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 作用:告诉系统"以后下载 Docker 就去阿里云的镜像站"。
  • 为什么要用阿里云:国内直接连 Docker 官网很慢,换成阿里云镜像速度更快。
  • 注意dnf-plugins-core 是 CentOS 8+ 的依赖包,CentOS 7 安装时会自动跳过,无需担心。

第五步:安装 Docker 全家桶

bash 复制代码
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 作用 :一次性安装 Docker 核心组件:
    • docker-ce:社区版 Docker 主程序
    • docker-ce-cli:命令行工具
    • containerd.io:容器运行时(管理容器的底层工具)
    • 两个 Plugin:支持多平台构建和 compose 编排

第六步:启动 Docker 并设置开机自启

bash 复制代码
sudo systemctl enable --now docker
  • 作用
    • enable:让 Docker 开机自动启动(避免每次重启都要手动开)
    • --now:立刻启动 Docker 服务(不用重启系统就能用)

第七步:配置国内镜像加速器

bash 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": [
    "https://dockerpull.org",
    "https://docker.1panel.dev",
    "https://docker.foreverlink.love",
    "https://docker.fxxk.dedyn.io",
    "https://docker.xn--6oq72ry9d5zx.cn",
    "https://docker.zhai.cm",
    "https://docker.5z5f.com",
    "https://a.ussh.net",
    "https://docker.cloudlayer.icu",
    "https://hub.littlediary.cn",
    "https://hub.crdz.gq",
    "https://docker.unsee.tech",
    "https://docker.kejilion.pro",
    "https://registry.dockermirror.com",
    "https://hub.rat.dev",
    "https://dhub.kubesre.xyz",
    "https://docker.nastool.de",
    "https://docker.udayun.com",
    "https://docker.rainbond.cc",
    "https://hub.geekery.cn",
    "https://docker.1panelproxy.com",
    "https://atomhub.openatom.cn",
    "https://docker.m.daocloud.io",
    "https://docker.1ms.run",
    "https://docker.linkedbus.com",
    "https://dytt.online",
    "https://func.ink",
    "https://lispy.org",
    "https://docker.xiaogenban1993.com"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
  • 作用:给 Docker 拉取镜像时挂"加速器",解决国内下载慢的问题。
  • 注意事项
    • 推荐使用阿里云镜像(需注册后获取个人专属地址)。
    • 修改配置后必须重启 Docker 生效。

第八步:验证安装是否成功

bash 复制代码
sudo docker run hello-world
  • 作用 :运行一个测试容器,如果看到 Hello from Docker! 的欢迎信息,说明安装成功!
  • 原理 :Docker 会从镜像仓库下载 hello-world 镜像并运行,自动输出提示信息。

常见问题自查

  1. 如果镜像加速配置后拉取失败,尝试删减 daemon.json 中的镜像地址。
  2. 遇到权限问题,记得用 sudo 或将自己加入 docker 用户组。
  3. 网络问题可尝试关闭防火墙:sudo systemctl stop firewalld
相关推荐
UtopianCoding6 分钟前
MinerU:重新定义PDF智能提取的开源利器
docker·pdf·开源
政安晨1 小时前
Ubuntu 服务器无法 ping 通网站域名的问题解决备忘 ——通常与网络配置有关(DNS解析)
linux·运维·服务器·ubuntu·ping·esp32编译服务器·dns域名解析
007php0072 小时前
Jenkins+docker 微服务实现自动化部署安装和部署过程
运维·数据库·git·docker·微服务·自动化·jenkins
路溪非溪3 小时前
嵌入式Linux驱动开发杂项总结
linux·运维·驱动开发
Neolock3 小时前
Linux应急响应一般思路(三)
linux·web安全·应急响应
被遗忘的旋律.4 小时前
Linux驱动开发笔记(七)——并发与竞争(上)——原子操作
linux·驱动开发·笔记
轻松Ai享生活4 小时前
minidump vs core dump
linux
轻松Ai享生活5 小时前
详细的 Linux 常用文件系统介绍
linux
张童瑶6 小时前
Linux 离线安装lrzsz(rz、sz上传下载小插件)
linux·运维·centos
{⌐■_■}6 小时前
【ElasticSearch】使用docker compose,通过编写yml安装es8.15和kibana可视化界面操作,go连接es
elasticsearch·docker·golang