Docker守护进程日志在哪里?奇怪的是,无法通过man, StackOverflow或Docker Docs找到答案。注意,我不是要docker容器的STDOUT,而是通过daemon / proxy在客户端和容器之间进行故障排除通信的守护进程日志。
当前回答
增加了在windows中查找docker守护进程日志的方法:
try
当在Windows和Mac OSX上使用docker机器时,守护进程在虚拟机中运行。
首先,找到活动的Docker机器。
docker-machine ls 在输出的name列下找到活动docker机器的名称。
您可以将docker守护进程日志文件复制到本地目录进行分析:
Docker-machine SCP默认:/var/log/docker.log ./ 默认是激活docker机器的名称。
其他回答
在我的环境(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
如果您的操作系统使用systemd,那么您可以通过以下命令查看docker守护进程日志:
sudo journalctl -fu docker.service
这取决于你的操作系统。下面是几个位置,其中包含针对少数操作系统的命令:
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 service ps --no-trunc {serviceName}
对于使用Docker Toolbox的Mac,首先使用Docker -machine ssh %VM- name % ssh进入虚拟机,然后检查/var/log/docker.log
推荐文章
- 如何配置slf4j-simple
- 如何在Python中记录源文件名称和行号
- MongoDB记录所有查询
- 如何禁用标准错误流的日志记录?
- 试图连接到https://index.docker.io时,网络超时
- 如何跟踪log4net问题
- 为每个Docker图像查找图层和图层大小
- 在没有事件源注册的情况下写入Windows应用程序事件日志
- 如何避免在为Python项目构建Docker映像时重新安装包?
- 如何用docker-compose更新现有图像?
- 如何在构建docker期间设置环境变量
- 拉访问拒绝存储库不存在或可能需要docker登录
- 如何在ENTRYPOINT数组中使用Docker环境变量?
- Docker:容器不断地重新启动
- Mac/OS X上的/var/lib/docker在哪里