Docker守护进程日志在哪里?奇怪的是,无法通过man, StackOverflow或Docker Docs找到答案。注意,我不是要docker容器的STDOUT,而是通过daemon / proxy在客户端和容器之间进行故障排除通信的守护进程日志。
当前回答
在Sabin的回答中,适用于我的Windows命令是:
Get-EventLog -LogName Application -Source DockerService
其他回答
对于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相关的日志。
这取决于你的操作系统。下面是几个位置,其中包含针对少数操作系统的命令:
Ubuntu (old using upstart ) - /var/log/upstart/docker.log Ubuntu (new using systemd ) - sudo journalctl -fu docker.service Amazon Linux AMI - /var/log/docker Boot2Docker - /var/log/docker.log Debian GNU/Linux - /var/log/daemon.log CentOS - cat /var/log/message | grep docker CoreOS - journalctl -u docker.service Fedora - journalctl -u docker.service Red Hat Enterprise Linux Server - /var/log/messages | grep docker OpenSuSE - journalctl -u docker.service macOS - ~/Library/Containers/com.docker.docker/Data/log/vm/docker.log Windows - Get-EventLog -LogName Application -Source Docker -After (Get-Date).AddMinutes(-5) | Sort-Object Time, as mentioned here.
对于使用Docker Toolbox的Mac,首先使用Docker -machine ssh %VM- name % ssh进入虚拟机,然后检查/var/log/docker.log
如果您的操作系统使用systemd,那么您可以通过以下命令查看docker守护进程日志:
sudo journalctl -fu docker.service
我在Manjaro 20/Arch Linux下找不到日志。相反,我只是停止了docker守护进程,并在调试模式下用$ sudo dockerd -D重新启动守护进程来产生日志。不幸的是,官方Docker文档没有为Arch提供这个信息。 这不仅适用于Arch,一般情况下也适用于其他系统。
推荐文章
- 如何跟踪log4net问题
- 为每个Docker图像查找图层和图层大小
- 在没有事件源注册的情况下写入Windows应用程序事件日志
- 如何避免在为Python项目构建Docker映像时重新安装包?
- 如何用docker-compose更新现有图像?
- 如何在构建docker期间设置环境变量
- 拉访问拒绝存储库不存在或可能需要docker登录
- 如何在ENTRYPOINT数组中使用Docker环境变量?
- Docker:容器不断地重新启动
- Mac/OS X上的/var/lib/docker在哪里
- 如何用docker-compose标记docker图像
- Python日志记录不输出任何东西
- 从环境文件中读入环境变量
- 禁用特定RUN命令的缓存
- IE9是否支持console.log,它是一个真实的功能吗?