3

当我们使用 COS 在 Compute Engine 上运行容器时,它会将其日志写入 JSON 文件。我们发现一个错误:

"level=error msg="Failed to log msg \"\" for logger json-file: write /var/lib/docker/containers/[image]-json.log: no space left on device". 

我正在寻找更改 Docker 的日志记录设置,并找到了这篇关于更改日志记录驱动程序设置的文章:

https://docs.docker.com/config/containers/logging/json-file/

我的困惑是我不知道如何通过控制台或 gcloud 设置参数以设置log-opts.

4

1 回答 1

1

/var/lib/docker 似乎在 / 文件系统上,如果这个文件系统的 inode 用完,当您尝试运行容器并尝试将其日志写入 JSON 文件时,您将收到该消息. 您可以通过运行检查这一点

df -i /var/lib/docker

您可以配置日志记录驱动程序以更改“/etc/docker/daemon.json”中的默认值</p>

这是 daemon.json 文件的配置示例

猫 /etc/docker/daemon.json

{“live-restore”:true,“storage-driver”:“overlay2”“log-driver”:“json-file”,“log-opts”:{“max-size”:“10m”,“max-文件”:“3”,“标签”:“生产状态”,“环境”:“操作系统,客户”}}

更改文件后不要忘记重新启动 docker 守护进程。:

systemctl 重启 docker.service

您可以查看以下文档以获取有关如何配置日志记录驱动程序的更多信息。

请让我知道结果。

于 2020-06-12T23:14:06.440 回答