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 命令訪問。