docker日志通常存储在容器的/var/log目录中。直接访问日志文件需使用docker inspect命令获取日志文件路径,再使用cat命令查看。也可以使用docker logs命令查看日志,并加上-f标志持续接收日志。在创建容器时,可使用–log-opt标志指定自定义日志路径。此外,还可使用日志驱动程序、logagent或stdout/stderr记录日志。
Docker 应用日志存放位置
直接访问容器日志文件:
-
容器正在运行时,运行以下命令查找日志文件:
docker inspect <container_name> | grep LogPath
-
找到日志文件后,使用 cat 命令查看:
cat <log_file>
使用 docker logs 命令:
-
运行以下命令查看容器日志:
docker logs <container_name>
*可以使用 -f 标志持续接收日志:
docker logs -f <container_name>
配置自定义日志路径:
-
在创建容器时,可以使用 –log-opt 标志指定自定义日志路径:
docker run --log-opt max-size=50m --log-opt max-file=3 <image_name>
-
容器运行后,通过以下命令验证日志路径:
docker inspect <container_name> | grep LogPath
其他方法:
- 使用日志驱动程序: Docker 提供了多种日志驱动程序,如 json-file 和 syslog,允许将日志存储在外部目标。
- 使用 LogAgent: 诸如 Fluentd 和 Logstash 等 LogAgent 可以收集和集中来自多个容器的日志。
- 使用 stdout/stderr: 应用程序可以将日志信息写入标准输出或标准错误,这些信息可以通过 docker logs 命令访问。