docker日志通常存儲在容器的/var/log目錄中。直接訪問日志文件需使用docker inspect命令獲取日志文件路徑,再使用cat命令查看。也可以使用docker logs命令查看日志,并加上-f標(biāo)志持續(xù)接收日志。在創(chuàng)建容器時(shí),可使用–log-opt標(biāo)志指定自定義日志路徑。此外,還可使用日志驅(qū)動程序、logagent或stdout/stderr記錄日志。
Docker 應(yīng)用日志存放位置
直接訪問容器日志文件:
-
容器正在運(yùn)行時(shí),運(yùn)行以下命令查找日志文件:
docker inspect <container_name> | grep LogPath
-
找到日志文件后,使用 cat 命令查看:
cat <log_file>
使用 docker logs 命令:
-
運(yùn)行以下命令查看容器日志:
docker logs <container_name>
*可以使用 -f 標(biāo)志持續(xù)接收日志:
docker logs -f <container_name>
配置自定義日志路徑:
-
在創(chuàng)建容器時(shí),可以使用 –log-opt 標(biāo)志指定自定義日志路徑:
docker run --log-opt max-size=50m --log-opt max-file=3 <image_name>
-
容器運(yùn)行后,通過以下命令驗(yàn)證日志路徑:
docker inspect <container_name> | grep LogPath
其他方法:
- 使用日志驅(qū)動程序: Docker 提供了多種日志驅(qū)動程序,如 json-file 和 syslog,允許將日志存儲在外部目標(biāo)。
- 使用 LogAgent: 諸如 Fluentd 和 Logstash 等 LogAgent 可以收集和集中來自多個(gè)容器的日志。
- 使用 stdout/stderr: 應(yīng)用程序可以將日志信息寫入標(biāo)準(zhǔn)輸出或標(biāo)準(zhǔn)錯(cuò)誤,這些信息可以通過 docker logs 命令訪問。