前言CentOS 7 开始已于 2024 年 6 月 30 日停止官方维护,官方 yum 源已不可用。因此,安装 Docker 之前必须先更换国内 yum 源。

一、更换 YUM 源为国内源(阿里云)1.1 备份原有 YUM 源配置cd /etc/yum.repos.d/mkdir backupmv *.repo backup/
1.2 下载阿里云 CentOS YUM 源(CentOS 8)
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo1.3 清理并生成新缓存
yum clean allyum makecache
1.4 验证源是否切换成功
yum repolist二、卸载旧版本 Docker
sudo yum remove -y docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine \docker-selinux
三、安装必要依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2四、配置 Docker 软件源(国内源)
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo五、更新 YUM 缓存
sudo yum makecache六、安装 Docker
6.1 查看可用版本(推荐)
yum list docker-ce --showduplicates | sort -r6.2 安装指定稳定版本(26.1.3)
sudo yum install -y docker-ce-26.1.3 docker-ce-cli-26.1.3 containerd.io也可以直接通过以下命令安装最新版本
yum install -y docker-ce docker-ce-cli containerd.io七、启动并验证
7.1 启动 Docker 服务
sudo systemctl start docker7.2 查看 Docker 运行状态(核心截图)
sudo systemctl status docker7.3 查看版本
docker -v7.4 运行 Hello World 验证
sudo docker run hello-world八、设置开机自启
sudo systemctl enable dockersudo systemctl is-enabled docker # 验证,应输出 enabled
九、必做配置优化
9.1 配置国内镜像加速器(核心配置)
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.1panel.live"]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker
验证加速是否生效:
docker info | grep -A 5 "Registry Mirrors"
9.2 允许普通用户执行 Docker(可选)
sudo groupadd dockersudo usermod -aG docker $USER
9.3. 开放防火墙端口(可选)
容器需要对外服务时执行,例如:
firewall-cmd --permanent --add-port=80/tcpfirewall-cmd --permanent --add-port=8080/tcpfirewall-cmd --reload
十、常用命令与运行示例:部署 Nginx
10.1. 运行示例:部署Nginx
# 拉取 Nginx 镜像docker pull nginx:latest# 后台运行 Nginx 容器,映射 80 端口docker run -d --name mynginx -p 80:80 nginx# 查看容器状态docker ps# 访问测试curl http://localhost:80
10.2. 常用命令
docker version |
docker images | |
docker ps |
docker ps -a | |
docker pull nginx | |
docker run -d -p 80:80 nginx | |
docker stop 容器ID | |
docker rm 容器ID | |
docker rmi 镜像ID |
附录:一键安装脚本
#!/bin/bash# CentOS 7 Docker 一键安装脚本# 1. 更换 YUM 源cd /etc/yum.repos.d/mkdir -p backupmv *.repo backup/ 2>/dev/nullcurl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repoyum clean all && yum makecache# 2. 卸载旧版 Dockeryum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine docker-selinux 2>/dev/null# 3. 安装依赖yum install -y yum-utils device-mapper-persistent-data lvm2# 4. 配置 Docker 源yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repoyum makecache# 5. 安装 Docker 26.1.3yum install -y docker-ce-26.1.3 docker-ce-cli-26.1.3 containerd.io# 6. 启动并设置开机自启systemctl start dockersystemctl enable docker# 7. 配置镜像加速mkdir -p /etc/dockercat > /etc/docker/daemon.json <<-'EOF'{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.1panel.live"]}EOFsystemctl daemon-reloadsystemctl restart docker# 8. 验证docker -vdocker run hello-worldecho "Docker 安装完成!"
夜雨聆风


