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


当前回答

如果您的操作系统使用systemd,那么您可以通过以下命令查看docker守护进程日志:

sudo journalctl -fu docker.service

其他回答

对于使用Docker Toolbox的Mac,首先使用Docker -machine ssh %VM- name % ssh进入虚拟机,然后检查/var/log/docker.log

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

请参阅Docker Daemon文档

对于Docker Mac Native(没有Boot2Docker或Docker -machine,运行Docker安装而没有额外的VirtualBox -我会推荐其他),所有的答案都不适合我。但Docker文档幸运地拯救了这个问题。

如果你想在命令行上查看docker守护进程日志,只需输入:

syslog -k Sender Docker

或者从Mac OS Sierra开始,你可以使用新设计的Mac控制台应用程序(不要在这里与应用程序“终端”混淆,控制台应用程序的图标看起来非常相似-我发现它与“Others..”下面的Launchpad)。这里有一篇文章描述了新的Mac OS Sierra控制台应用程序的一般用法,它还没有进入官方Docker文档。

在控制台应用程序中,只需选择system.log并在搜索栏中输入Docker。´s。现在您应该可以看到所有与Docker相关的日志。

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

在我的环境(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