本文介绍如何在 CentOS 9 系统上安装 Docker,包含清理旧版本、安装依赖、配置镜像加速等全流程操作。
一、完整安装步骤
1. 卸载旧版 Docker
正常 CentOS 9 默认不支持 Docker
可以使用RPM 检测 Docker 历史安装状态
rpm -qa | grep -E 'docker|containerd|podman'
说明 | 命令输出示例 | 结果判断 |
---|---|---|
已安装 Docker | docker-ce-24.0.7-1.el9.x86_64 | 需要执行卸载操作 |
仅安装 Containerd | containerd.io-1.6.24-3.1.el9.x86_64 | 需要执行卸载操作 |
已安装 podman | podman-4.2.0-5.el9.x86_64 | 需要执行卸载操作 |
未安装 | (无输出) | 无需操作 |
- 卸载旧版本
dnf remove -y docker-ce docker-ce-cli containerd.io podman
- 清理残留文件
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
rm -rf /var/lib/podman
# 清理容器网络配置
rm -rf /etc/cni/net.d
# 删除 Docker 相关的 systemd 配置(可选)
rm -rf /etc/systemd/system/docker.service
rm -rf /etc/systemd/system/docker.socket
systemctl daemon-reload
2. 安装必要的软件包
dnf install -y yum-utils device-mapper-persistent-data lvm2
3. 添加 Docker 官方仓库
dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4. 安装 Docker
dnf install -y docker-ce docker-ce-cli containerd.io
5. 启动并验证服务
# 启动 Docker 服务
systemctl start docker
systemctl enable docker
6. 防火墙配置(如需开放端口)
# 允许 Docker 默认桥接网络
firewall-cmd --permanent --zone=trusted --add-interface=docker0
firewall-cmd --reload
二、镜像加速配置
推荐国内用户配置镜像加速器:
1. 创建配置文件
mkdir -p /etc/docker
2. 写入阿里云加速配置
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://your-mirror-id.mirror.aliyuncs.com"]
}
EOF
提示:将
your-mirror-id
替换为您实际获得的镜像加速地址(阿里云/腾讯云等平台可免费获取)
以阿里云为例:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
3. 重启服务生效
sudo systemctl daemon-reload
sudo systemctl restart docker
三、常用命令速查
# 查看 Docker 版本
docker version
# 查看系统信息
docker info
# 管理容器
docker start/stop/restart [容器名]
# 管理镜像
docker images
docker rmi [镜像ID]
# 管理容器
docker ps / docker ps -a
docker remove [镜像ID]
四、总结与建议
✅ 核心要点总结
- 安装前务必检查旧版本残留,避免环境冲突
- 推荐使用阿里云/腾讯云等国内镜像加速器
- 了解docker最基本常用的命令
⚠️ 关键注意事项
- 生产环境操作前建议创建系统快照
- 避免直接使用
sudo rm -rf
清理目录(除非确认无重要数据) - 定期执行
dnf update
保持组件更新