linux

Linux Docker日志如何查看

小樊
65
2025-09-18 13:03:31
栏目: 智能运维

Linux下查看Docker日志的常用方法

一、使用docker logs命令(最常用)

docker logs是Docker原生提供的日志查看工具,用于获取容器的**标准输出(stdout)标准错误(stderr)**日志,适用于大多数日常运维场景。

二、查看Docker守护进程日志(引擎级日志)

若需排查Docker引擎本身的问题(如容器无法启动、守护进程崩溃),需查看守护进程日志,其位置因Linux发行版而异:

三、直接访问容器日志文件(默认路径)

Docker默认使用json-file日志驱动,容器日志以JSON格式存储在宿主机的/var/lib/docker/containers/<容器ID>/<容器ID>-json.log路径下。可通过以下步骤查看:

  1. 获取容器ID:docker ps(列出运行中的容器)或docker ps -a(列出所有容器)。
  2. 查看日志路径:docker inspect --format='{{.LogPath}}' <容器ID>(输出日志文件的完整路径)。
  3. 读取日志文件:使用catlesstail命令查看。
    示例:cat /var/lib/docker/containers/abc123/abc123-json.logabc123为容器ID)。

四、进入容器内部查看应用日志

若应用程序将日志输出到容器内部的特定文件(如/var/log/app.log),可通过docker exec命令进入容器,再使用系统命令查看:

  1. 进入容器Shell:docker exec -it <容器ID> /bin/bashbash为容器内的Shell,若容器无bash,可替换为sh)。
  2. 查看日志文件:使用cattailless命令。
    示例:cat /var/log/app.log/var/log/app.log为应用日志路径,需根据实际情况调整)。

五、配置日志驱动(高级场景)

默认的json-file驱动适合大多数场景,但在生产环境中,可能需要将日志发送到远程服务器(如syslog、ELK)或第三方日志平台(如Fluentd、Splunk),此时需配置日志驱动:

0
看了该问题的人还看了