Docker守护进程日志在哪里?
Docker守护进程日志在哪里? 奇怪的是无法find通过人,StackOverflow或Docker文档的答案。 注意我不是要求docker容器STDOUT,而是守护进程日志,用于通过守护进程/代理对客户端和容器之间的通信进行故障排除。
这取决于你的操作系统。 以下是less数几个操作系统的命令:
- Ubuntu(旧版使用upstart) –
/var/log/upstart/docker.log
- Ubuntu(新的使用systemd) –
journalctl -u docker.service
- Boot2Docker –
/var/log/docker.log
- Debian GNU / Linux –
/var/log/daemon.log
- CentOS –
/var/log/daemon.log | grep docker
/var/log/daemon.log | grep docker
-
journalctl -u docker.service
–journalctl -u docker.service
- Fedora –
journalctl -u docker.service
- 红帽企业Linux服务器 –
/var/log/messages | grep docker
/var/log/messages | grep docker
- OpenSuSE –
journalctl -u docker.service
- OSX –
~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/docker.log
- Windows –
Get-EventLog -LogName Application -Source Docker -After (Get-Date).AddMinutes(-5) | Sort-Object Time
Get-EventLog -LogName Application -Source Docker -After (Get-Date).AddMinutes(-5) | Sort-Object Time
,如这里所述 。
如果您的操作系统正在使用systemd
那么您可以使用以下命令查看docker守护进程日志:
sudo journalctl -fu docker.service
使用CentOS7,使用命令journalctl -u docker
docker可以获得日志。 回答得很清楚,因为@ sabin的答案对于旧版本的CentOS可能是准确的,但对我来说并不正确。
systemd有自己的日志系统,称为日志。 docker守护进程的日志可以使用journalctl -u docker进行查看
参考: https : //docs.docker.com/engine/admin/configuring/
Docker for Mac(Beta)
~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/docker.log
对于Docker Mac Native (没有Boot2Docker或者docker-machine,没有额外的VirtualBox运行你的Docker安装 – 我会推荐其他的), 所有的答案都不适用于我 。 但幸运的是Docker docs来救援。
如果您想在命令行中看到docker守护进程日志,只需键入:
syslog -k Sender Docker
另外,从Mac OS Sierra开始,您可以使用新devise的Mac控制台应用程序 (不要在这里与应用程序“terminal”混淆, 控制台应用程序的图标看起来非常相似 – 我发现它与“其他”下面的启动板。 “)。 这里有一篇文章 ,描述了新的Mac OS Sierra控制台应用程序的一般用法,它并没有进入正式的Docker文档。
在控制台应用程序内部,只需selectsystem.log并在search栏中inputDocker
。 而已。 现在你应该看到所有的Docker相关的日志。
对于使用Docker Toolbox的Mac,先用“docker-machine ssh%VM-NAME%”ssh进入虚拟机,然后检查/var/log/docker.log
在我的环境中(docker for mac 17.07),在~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/docker.log
没有日志文件
相反,我可以find如下的日志文件。
-
进入虚拟机
$ screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
-
检查日志文件
/ # tail -f /var/log/docker.log
~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/console-ring
日志的位置已经改变为Mac ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/console-ring
请参阅Docker守护程序文档
添加方法来查找docker守护进程login窗口:
尝试
在Windows和Mac OSX上使用Docker机器时,守护进程在虚拟机内运行。
首先,find你的活动Docker机器。
docker-machine ls在输出中的NAME列下find活动docker计算机的名称。
您可以将docker守护进程日志文件复制到您的本地目录进行分析:
docker-machine scp默认:/var/log/docker.log ./其中default是docker机器的活动名称。