centos 7 安装 docker 的关键在于正确配置环境、yum 源和服务:需确认内核≥3.10、卸载旧版、安装 yum-utils 等依赖,替换为阿里云系统源和 docker 源,执行 yum makecache 成功后安装 docker-ce 并启用服务。

CentOS 上安装 Docker 不是单纯敲一条命令的事,关键在配——配环境、配源、配服务。配得对,后续拉镜像、跑容器才顺;配错了,常卡在 yum makecache 失败、docker run hello-world 超时或直接报 “No package docker-ce available”。
确认系统基础条件
不是所有 CentOS 都能直接装新版 Docker:
- CentOS 7(内核 ≥3.10)或 CentOS Stream 8/9/10 才被官方支持;CentOS 8 已于 2021 年底停止维护,但 Docker CE 仍可安装,建议优先用 Stream 版本
- 执行
cat /etc/redhat-release或cat /etc/os-release确认版本,避免在已停服的旧版上硬装 - 64 位系统是硬性要求,
uname -m输出应为x86_64 - 确保
centos-extras仓库已启用(CentOS 7/8 默认开启,可用dnf repolist | grep extras检查)
清理旧版 + 安装必要依赖
残留的 docker 或 docker-engine 会和 docker-ce 冲突,必须清掉:
- 运行卸载命令(无报错也正常):
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine - 手动清理数据目录(可选但推荐):
rm -rf /var/lib/docker /var/lib/containerd - 安装核心依赖:
yum install -y yum-utils device-mapper-persistent-data lvm2
其中yum-utils提供yum-config-manager,后两者支撑 Docker 的 overlay2 存储驱动
配置可用的软件源(国内用户重点)
这一步最容易出问题:CentOS 7 官方源已停,Docker 官方源在国内访问慢,不换源大概率失败。
- 先换系统级 YUM 源(尤其 CentOS 7):
备份原配置:mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
下载阿里云源:curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo(CentOS 8 改用Centos-8.repo) - 再加 Docker 专用源(二选一):
阿里云(推荐):yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
或官方源:yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo - 更新缓存:
yum makecache—— 若此处报 404 或超时,说明源没配对,需回头检查 URL 和系统版本是否匹配
安装并启用 Docker 服务
装完不启动等于没装,不设开机自启则重启后失效:
- 安装(默认装最新稳定版):
yum install -y docker-ce docker-ce-cli containerd.io - 启动并设开机自启:
systemctl enable docker && systemctl start docker - 验证状态:
systemctl status docker—— 显示active (running)即成功docker version—— 查看 client/server 版本信息docker run hello-world—— 真正拉取并运行首个容器,输出 “Hello from Docker!” 才算闭环











