首页 > 运维 > Docker > 怎么查看docker启动日志

怎么查看docker启动日志

PHPz
发布: 2023-04-18 14:36:14
原创
5786 人浏览过

Docker 是一种流行的应用程序容器化平台,能够加快应用程序的构建部署和管理速度。然而,在使用 Docker 运行应用程序时,我们可能会遇到一些意外问题,这就需要查看 Docker 启动日志以了解问题的根本原因。那么,怎么查看 Docker 启动日志呢?

  1. 使用 docker logs 命令

Docker 提供了一个内置的命令 docker logs,可以用于查看容器内的标准输出和标准错误输出。要使用该命令,可以先查看正在运行的容器的 ID 或者名称,通过 docker ps 命令可以查看:

$ docker ps

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
8623f22d0b74        nginx               "nginx -g 'daemon of…"   10 days ago         Up 2 hours          80/tcp              web
登录后复制

在上面的输出中,容器 ID 为 8623f22d0b74,容器名称为 web。可以使用 docker logs 命令查看容器内的日志输出:

$ docker logs 8623f22d0b74

172.17.0.1 - - [02/May/2020:19:41:04 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36" "-"
172.17.0.1 - - [02/May/2020:19:41:06 +0000] "GET /favicon.ico HTTP/1.1" 404 555 "http://localhost/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36" "-"
登录后复制

在上面的输出中,我们可以看到 NGINX 服务器的访问日志,这个命令可以简单地帮助我们找到容器的启动问题。

  1. 使用 docker events 命令

除了使用 docker logs 命令,我们还可以使用 docker events 命令来查看 Docker 启动事件。这个命令可以观察 Docker 发出的所有事件,并输出相应的信息。例如,我们可以使用以下命令查看 Docker 运行的所有事件:

$ docker events

...

2020-05-02T19:44:07.842095081+00:00 container destroy 8623f22d0b746eee40b1568a78ffdf2f1555a9c5b557d8c5a5a5eaa32c7f1ede (image=nginx, name=web)
2020-05-02T19:44:08.273816081+00:00 network disconnect 6cbedee6e77d 03ac9adf39af42c8d651f0ed60073c92837e866aebb0c75bfcb3f3c9a701bcb7 (endpoint=03ac9adf39af42c8d651f0ed60073c92837e866aebb0c75bfcb3f3c9a701bcb7, name=bridge, type=bridge)
2020-05-02T19:44:09.260029423+00:00 network destroy 6cbedee6e77d (name=bridge)
登录后复制

在上面的输出中,我们可以看到容器的销毁事件、网络的断开事件以及网络的销毁事件。这个命令可以帮助我们了解 Docker 容器的其他事件。

  1. 查看 Docker 日志文件

Docker 容器的所有日志都会存储在容器的文件系统中。因此,我们可以使用常规的文件查看工具比如 cat、tail 或 grep 来查看它们。例如,如果要查看容器的系统日志,可以使用以下命令:

$ docker inspect --format='{{.LogPath}}' 8623f22d0b74
/var/lib/docker/containers/8623f22d0b74cea5f8d76432734ec06c19683d698583cc59dd8f4af4bb70ac10/8623f22d0b74cea5f8d76432734ec06c19683d698583cc59dd8f4af4bb70ac10-json.log
登录后复制

这条命令将输出容器的日志文件路径。我们可以继续使用 tail 命令来查看日志文件的后几行:

$ docker inspect --format='{{.LogPath}}' 8623f22d0b74 | xargs tail -f

...
登录后复制

在上面的输出中,我们可以看到容器的实时日志输出。可以使用 Ctrl-C 快捷键来停止查看日志。

总结

Docker 的日志管理是一个复杂的过程,但是通过使用 Docker 提供的内置命令,我们可以轻松地查看容器内发生的问题。通过使用 docker logs 命令、docker events 命令或者查看容器日志文件,我们可以及时了解 Docker 容器的正在运行的情况,为部署和管理 Docker 应用程序提供有力的支持。

以上是怎么查看docker启动日志的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板