Docker守护进程日志在哪里?奇怪的是,无法通过man, StackOverflow或Docker Docs找到答案。注意,我不是要docker容器的STDOUT,而是通过daemon / proxy在客户端和容器之间进行故障排除通信的守护进程日志。


当前回答

在我的环境(docker for mac 17.07)中,~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/d ocker.log没有日志文件

相反,我可以找到日志文件如下。

进入虚拟机。 $ screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty 或 $ screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty . xml 检查日志文件 / # tail -f /var/log/docker.log

其他回答

使用CentOS 7。X或8。X,使用命令journalctl -u docker获取日志。明确回答,因为@sabin的答案对于旧版本的CentOS可能是准确的,但对我来说并不正确。

Systemd有自己的日志系统,称为日志。可以使用journalctl -u docker查看docker守护进程的日志

裁判:https://docs.docker.com/engine/admin/configuring/

Mac OSX的docker日志的位置已经更改为~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/console-ring

请参阅Docker Daemon文档

增加了在windows中查找docker守护进程日志的方法:

try

当在Windows和Mac OSX上使用docker机器时,守护进程在虚拟机中运行。

首先,找到活动的Docker机器。

docker-machine ls 在输出的name列下找到活动docker机器的名称。

您可以将docker守护进程日志文件复制到本地目录进行分析:

Docker-machine SCP默认:/var/log/docker.log ./ 默认是激活docker机器的名称。

你也可以通过这个命令查看日志:

docker service ps --no-trunc {serviceName}

我在Manjaro 20/Arch Linux下找不到日志。相反,我只是停止了docker守护进程,并在调试模式下用$ sudo dockerd -D重新启动守护进程来产生日志。不幸的是,官方Docker文档没有为Arch提供这个信息。 这不仅适用于Arch,一般情况下也适用于其他系统。