Docker守护进程日志在哪里?奇怪的是,无法通过man, StackOverflow或Docker Docs找到答案。注意,我不是要docker容器的STDOUT,而是通过daemon / proxy在客户端和容器之间进行故障排除通信的守护进程日志。
当前回答
我在Manjaro 20/Arch Linux下找不到日志。相反,我只是停止了docker守护进程,并在调试模式下用$ sudo dockerd -D重新启动守护进程来产生日志。不幸的是,官方Docker文档没有为Arch提供这个信息。 这不仅适用于Arch,一般情况下也适用于其他系统。
其他回答
增加了在windows中查找docker守护进程日志的方法:
try
当在Windows和Mac OSX上使用docker机器时,守护进程在虚拟机中运行。
首先,找到活动的Docker机器。
docker-machine ls 在输出的name列下找到活动docker机器的名称。
您可以将docker守护进程日志文件复制到本地目录进行分析:
Docker-machine SCP默认:/var/log/docker.log ./ 默认是激活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 service ps --no-trunc {serviceName}
如果您的操作系统使用systemd,那么您可以通过以下命令查看docker守护进程日志:
sudo journalctl -fu docker.service
Mac OSX的docker日志的位置已经更改为~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/console-ring
请参阅Docker Daemon文档
推荐文章
- 如何从私有docker注册表中删除图像?
- 创建多个标签码头镜像
- Docker -如何将文件从镜像复制到主机?
- 为什么logcat没有显示任何东西在我的Android?
- 如何防止docker在系统启动时自动启动容器?
- 什么是Docker映像“层”?
- 无法从docker-compose连接到docker
- 在Python中记录未捕获的异常
- Docker错误无法删除Docker容器,冲突:无法删除存储库引用
- 如何让容器在Kubernetes上运行?
- 如何备份docker容器的数据卷?
- 重定向复制的标准输出到日志文件从bash脚本本身
- Docker入口点运行bash脚本被“拒绝权限”
- 我如何复制Docker作为非根?
- 如何禁用容器上的自动重启?