1、 Docker daemon 启动失败

# 检查Docker服务状态

systemctl status docker

# 查看启动日志定位错误

journalctl -u docker -f

cat /var/log/docker.log | grep -i "error\|fatal"

# 检查Docker daemon配置

cat /etc/docker/daemon.json

# 验证配置文件语法

docker info  # 若配置错误会显示具体问题

# 常见配置错误修复:

# 1. JSON格式错误(缺少逗号、引号不匹配)

# 2. 存储驱动配置冲突

# 3. 端口或目录权限问题

# 4. 网络配置错误

# 尝试使用默认配置启动

mv /etc/docker/daemon.json /etc/docker/daemon.json.bak

systemctl restart docker

# 手动启动Docker daemon并调试

dockerd --debug --log-level=debug

2、 存储驱动问题导致启动失败

# 查看存储驱动配置

grep "storage-driver" /etc/docker/daemon.json

# 检查文件系统支持

grep -E "ext4|xfs" /proc/filesystems

# 验证存储目录

ls -ld /var/lib/docker

df -h /var/lib/docker

# 更换存储驱动(需清理现有数据)

systemctl stop docker

rm -rf /var/lib/docker/*

修改 /etc/docker/daemon.json

{

  ......

  "storage-driver": "overlay2"

}

systemctl start docker

3、权限与目录访问问题

# 检查Docker相关目录权限

ls -ld /var/lib/docker /var/run/docker.sock

chown -R root:docker /var/lib/docker

chmod 660 /var/run/docker.sock

# 验证当前用户是否在docker组

groups $USER

# 若不在,添加用户到docker组

usermod -aG docker $USER

newgrp docker  # 立即生效

# SELinux/AppArmor问题排查

ausearch -m avc -ts recent | grep docker  # SELinux

journalctl -xe | grep apparmor | grep docker  # AppArmor

# 临时禁用SELinux测试

setenforce 0

systemctl restart docker

更多推荐