启用 docker 守护进程调试模式需在 daemon.json 中设 "debug": true 或启动时加 -d 参数,重启后用 docker info | grep debug 验证,日志通过 journalctl -u docker 或 /var/log/docker 查看。
要让 docker 守护进程输出详细运行日志,核心是启用其内置的调试模式(debug mode),这会显著增加日志粒度,包括连接建立、镜像拉取、容器启动、网络配置等各环节的内部行为。
修改守护进程启动参数
Docker 守护进程(dockerd)通过命令行参数控制日志级别。启用调试需添加 -D 或 --debug 标志:
- 在 systemd 管理的系统(如较新版本的 Ubuntu、CentOS 7+)中,编辑 /etc/docker/daemon.json,加入:
{"debug": true} - 若使用传统 sysconfig 文件(如 Amazon ECS 优化版 Amazon Linux),编辑 /etc/sysconfig/docker,找到
OPTIONS=行,确保包含-D,例如:OPTIONS="-D --default-ulimit nofile=1024:4096"(注意去掉开头的#注释符)
重启守护进程并验证生效
参数修改后必须重启 dockerd 才能生效:
在 Linux 上通过 Docker 运行 OpenClaw,并使用 Tailscale 实现远程访问。⚠️ 涉及 sudo、Docker、Tailscale和凭证挂载——请先查阅安全章节...
- systemd 系统:
sudo systemctl restart docker - sysvinit 系统(如旧版 Amazon Linux):
sudo service docker restart - 验证是否启用:运行
docker info | grep Debug,输出应为Debug: true - 查看日志位置:默认输出到
journalctl -u docker(systemd)或/var/log/docker(部分发行版)
配合日志驱动增强可观测性
仅开启 debug 模式还不够——还需确保日志能被有效捕获和查看:
- 确认日志驱动未被覆盖:检查 /etc/docker/daemon.json 中无
"log-driver"覆盖全局设置,避免干扰守护进程自身日志 - 如需长期保留,可搭配
journald驱动或调整 systemd 日志轮转策略(/etc/systemd/journald.conf中设置MaxRetentionSec和SystemMaxUse) - 调试期间建议禁用日志压缩与轮转干扰,专注实时输出
区分守护进程日志与容器日志
注意:守护进程 debug 日志记录的是 dockerd 自身行为(如“Listening on /var/run/docker.sock”、“Calling GET /v1.43/containers/json”),不是容器内应用的日志。后者仍需用 docker logs 查看。两者日志来源、路径、格式完全不同,不可混淆。










