开启 docker debug 日志需将日志级别设为 debug,推荐修改 /etc/docker/daemon.json 为 { "debug": true } 后执行 sudo kill -sighup $(pidof dockerd);也可临时运行 sudo dockerd -d。启用后通过 docker info | grep "debug" 验证,注意生产环境慎用以防性能与磁盘影响。

在 Docker 守护进程配置中开启 Debug 调试日志模式,核心是将日志级别设为 debug,主要有两种等效方式:通过配置文件永久生效,或通过启动参数临时启用。
修改 daemon.json 配置文件(推荐)
这是最常用、最稳妥的方式,适用于生产与开发环境:
- 编辑或创建 /etc/docker/daemon.json 文件(若不存在可新建)
- 写入以下内容(注意 JSON 格式严格,末尾不能有多余逗号):
{ "debug": true } 或更明确地写为 { "log-level": "debug" } - 保存后重新加载配置,无需重启整个服务:
sudo kill -SIGHUP $(pidof dockerd) - 验证是否生效:检查日志输出是否明显变多,例如运行 journalctl -u docker.service -n 50 或查看 /var/log/messages(RHEL/CentOS)、/var/log/daemon.log(Debian)等对应位置
启动时直接加参数(适合临时调试)
当无法修改配置文件,或需要快速验证问题时可用:
- 先停止当前守护进程:sudo systemctl stop docker
- 手动以 debug 模式启动:sudo dockerd -D 或 sudo dockerd --debug
- 日志会直接输出到终端;如需保存,可重定向:
sudo dockerd -D >> /tmp/docker-debug.log 2>&1 - 该方式下 Ctrl+C 会终止进程,适合单次诊断,不建议长期运行
确认 Debug 日志是否已启用
开启后,可通过以下方式交叉验证:
- 执行 docker info | grep "Debug",输出应显示 Debug: true
- 查看内核级线索:sudo dmesg | grep -i 'docker\|runc',有助于发现底层异常
- 观察容器启动、镜像拉取、网络初始化等操作的日志细节是否显著增加
注意事项
Debug 日志信息量大,持续开启可能影响磁盘空间和性能:
- 生产环境建议仅在排查问题时启用,问题定位后及时调回 "log-level": "info"
- 确保 /var/log 所在分区有足够空间,尤其长时间运行时
- 部分系统(如 Ubuntu 16.04+、CentOS 7+)默认使用 journald,优先用 journalctl -u docker.service -f 实时跟踪











