Docker CE 24.0 在 CentOS 7/8 的 5 步安装与 3 步卸载完整流程

📅 2026/7/7 23:58:43
Docker CE 24.0 在 CentOS 7/8 的 5 步安装与 3 步卸载完整流程
Docker CE 24.0 在 CentOS 7/8 的完整安装与深度清理指南1. 环境准备与系统检查在开始安装Docker CE 24.0之前我们需要确保系统环境满足基本要求。CentOS 7和8虽然内核版本不同但安装流程基本一致。首先检查系统版本和内核cat /etc/redhat-release uname -r关键要求CentOS 7内核版本≥3.10CentOS 8内核版本≥4.1864位系统架构至少2GB可用内存生产环境建议4GB对于已安装旧版Docker的环境建议先执行彻底清理sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine注意如果系统从未安装过Docker此步骤会提示未找到软件包可安全忽略。2. 安装Docker CE 24.0的完整流程2.1 配置稳定的软件仓库首先安装必要的工具包并设置仓库sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo针对国内用户推荐替换为阿里云镜像加速sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json -EOF { registry-mirrors: [https://你的ID.mirror.aliyuncs.com] } EOF2.2 安装特定版本Docker CE默认会安装最新版本若要指定24.0版本sudo yum install -y docker-ce-24.0.0 docker-ce-cli-24.0.0 containerd.io验证安装版本docker --version2.3 服务启动与验证启动Docker并设置开机自启sudo systemctl start docker sudo systemctl enable docker运行测试容器验证安装sudo docker run hello-world成功运行后您应该看到Hello from Docker!的欢迎信息。3. 生产环境关键配置3.1 非root用户操作权限为避免每次使用sudo将用户加入docker组sudo usermod -aG docker $USER newgrp docker # 立即生效3.2 存储驱动优化检查当前存储驱动docker info | grep Storage Driver对于CentOS 7/8推荐使用overlay2sudo tee /etc/docker/daemon.json -EOF { storage-driver: overlay2, storage-opts: [ overlay2.override_kernel_checktrue ] } EOF sudo systemctl restart docker3.3 日志轮转配置防止日志文件过大sudo tee /etc/docker/daemon.json -EOF { log-driver: json-file, log-opts: { max-size: 10m, max-file: 3 } } EOF sudo systemctl restart docker4. 彻底卸载Docker CE 24.04.1 标准卸载流程停止所有容器服务docker kill $(docker ps -q)卸载软件包sudo yum remove -y docker-ce docker-ce-cli containerd.io删除残留文件sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd4.2 深度清理检查清单为确保完全清除执行以下附加步骤检查并删除相关配置文件sudo rm -rf /etc/docker sudo rm -rf /etc/systemd/system/docker.service.d清理依赖包sudo yum autoremove -y删除用户组可选sudo groupdel docker5. 常见问题解决方案5.1 安装失败排查错误现象可能原因解决方案无法连接仓库网络问题检查防火墙或配置国内镜像依赖冲突旧版本残留执行彻底卸载后重试内核不兼容系统版本过低升级内核或使用兼容版本5.2 容器网络问题如果遇到容器网络连接问题尝试重置网络配置sudo systemctl stop docker sudo rm -rf /var/lib/docker/network sudo systemctl start docker5.3 存储空间管理定期清理无用资源docker system prune -a -f查看磁盘使用情况docker system df6. 版本升级与回滚策略6.1 安全升级步骤备份重要容器docker export -o container_backup.tar my_container升级到指定版本sudo yum update docker-ce-24.0.0 docker-ce-cli-24.0.06.2 版本回滚方法列出可用版本yum list docker-ce --showduplicates | sort -r安装特定旧版本sudo yum downgrade docker-ce-VERSION_STRING7. 性能调优实践7.1 内核参数优化编辑/etc/sysctl.conf添加vm.max_map_count262144 net.ipv4.ip_forward1 fs.file-max2097152应用更改sudo sysctl -p7.2 资源限制配置创建或修改/etc/docker/daemon.json{ default-ulimits: { nofile: { Name: nofile, Hard: 65536, Soft: 65536 } } }7.3 生产环境推荐配置配置项推荐值说明日志驱动json-file兼容性最好日志轮转10MB×3平衡存储与可追溯性存储驱动overlay2性能与稳定性兼顾cgroup驱动systemd与systemd更好集成8. 安全加固措施8.1 用户命名空间隔离启用用户隔离可降低容器突破风险sudo tee /etc/docker/daemon.json -EOF { userns-remap: default } EOF8.2 容器运行时保护限制容器能力docker run --cap-drop ALL --cap-add NET_BIND_SERVICE -d nginx8.3 镜像安全扫描使用内置工具检查镜像漏洞docker scan hello-world9. 监控与日志管理9.1 基础监控命令查看实时资源使用docker stats检查容器详细配置docker inspect container_id9.2 日志收集技巧查看特定容器日志docker logs --tail 100 -f container_name导出日志到文件docker logs container_id container.log10. 最佳实践总结版本控制生产环境应固定Docker版本避免自动升级配置即代码将daemon.json纳入版本控制系统资源隔离为关键容器配置CPU/内存限制定期维护每月执行一次系统清理和健康检查备份策略重要容器数据应定期导出备份对于持续集成环境建议使用以下清理脚本#!/bin/bash # 停止所有容器 docker stop $(docker ps -aq) # 清理无用资源 docker system prune -af # 检查Docker状态 systemctl status docker | grep Active