RHEL7下Docker CE启动失败(状态码203)排查求助
Docker CE启动失败排查与修复方案
核心错误定位
从服务状态输出可明确两个致命问题:
- 启动前置脚本
/var/lib/docker/scripts/mount-overlay2fs.sh执行失败(状态码203/EXEC) - 停止后置脚本
/var/lib/docker/scripts/dockerd-shutdown.sh执行失败(状态码203/EXEC) - Docker服务目录
/etc/systemd/system/docker.service.d残留Docker EE时期的配置文件(httpd.conf、comp_config.conf),会覆盖CE的默认启动逻辑
状态码203表示系统无法执行指定脚本,常见原因:脚本不存在、无执行权限、依赖命令缺失。
修复步骤
1. 清理Docker EE遗留配置
# 备份遗留配置(可选操作) mkdir -p /root/docker_ee_config_backup mv /etc/systemd/system/docker.service.d/* /root/docker_ee_config_backup/ # 删除空的配置目录 rmdir /etc/systemd/system/docker.service.d # 重载systemd配置 systemctl daemon-reload
2. 重置Docker CE服务配置
由于Docker CE默认不需要这些自定义脚本,直接重装服务文件恢复默认配置:
yum reinstall docker-ce # 再次重载systemd systemctl daemon-reload
3. 解除启动限制
之前重复启动失败触发了systemd的启动次数限制,先重置失败状态:
systemctl reset-failed docker
4. 启动并验证服务
systemctl start docker # 查看服务状态 systemctl status docker
额外排查项
- 存储驱动兼容性:RHEL 7.4及以上版本才支持overlay2驱动,若系统版本较低,需在
/etc/docker/daemon.json中配置使用devicemapper驱动:{ "storage-driver": "devicemapper" } - 目录权限检查:确保
/var/lib/docker目录属主为root:root,权限设置为700:chown -R root:root /var/lib/docker chmod -R 700 /var/lib/docker - 实时日志排查:若问题仍存在,查看实时日志定位细节:
journalctl -u docker.service -f
内容的提问来源于stack exchange,提问作者noonenine
相关产品推荐
相关产品推荐

