gpt4 book ai didi

docker - 如何更改 docker 容器日志的保存位置?

转载 作者:行者123 更新时间:2023-12-01 05:51:40 24 4
gpt4 key购买 nike

我想将容器的所有 stdout 消息记录到外部驱动器,因为“docker”驱动器上的空间有限。

使用 docker-compose v3,我使用“json-file”驱动程序将日志保存在 10 MB 块中

logging:
driver: "json-file"
options:
max-size: 10m

默认情况下,结果日志保存在 /var/lib/docker/containers/<container id>/<container id>-json.log
有什么办法可以改变这个位置吗?

最佳答案

我不确定是否有现成的解决方案。

您可以尝试的一件事是为您的 json-file 日志驱动程序设置最低限制,但将所有日志保存在单独的目录中,如下所示:

docker-compose logs -f 2>&1 | multilog t s1048576 n100 ./my_log_directory

您应该在后台运行它以记录所有日志

需要此位来将所有 stderr 视为 stdin,以便 multilog 保存它:
2>&1

有关多日志的更多信息,请访问: https://serverfault.com/questions/445118/rotating-logs-generated-by-a-process-that-logs-to-stdin#445461

虽然它可能满足您的需求,但您仍然会丢失 json-file 驱动程序提供的一些信息

关于docker - 如何更改 docker 容器日志的保存位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53391111/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com