更改 Docker 默认日志驱动
💡
原文英文,约200词,阅读约需1分钟。
📝
内容提要
Docker 默认使用的 json-file 日志驱动不支持日志轮换,可能导致磁盘耗尽。可以通过在 /etc/docker/daemon.json 中启用日志轮换,或切换到支持日志轮换的 local 驱动来解决。配置后需重启 Docker 服务,并重建现有容器以应用新配置。
🎯
关键要点
- Docker 默认使用 json-file 日志驱动,该驱动不支持日志轮换,可能导致磁盘耗尽。
- 可以通过在 /etc/docker/daemon.json 中启用日志轮换来解决此问题。
- 启用日志轮换的配置示例:{"log-driver": "json-file", "log-opts": {"max-size": "10m", "max-file": "5"}}。
- 可以选择切换到支持日志轮换的 local 驱动,该驱动默认启用日志轮换。
- local 驱动的配置示例:{"log-driver": "local"}。
- 更改日志驱动后,需要重启 Docker 服务以应用新配置,使用命令:systemctl restart docker。
- 现有容器在重启后不会自动应用新日志配置,需重新创建容器。
❓
延伸问答
Docker 默认的日志驱动是什么?
Docker 默认使用 json-file 日志驱动。
为什么 json-file 驱动可能导致磁盘耗尽?
因为 json-file 驱动不支持日志轮换,日志会不断增加,最终可能耗尽磁盘空间。
如何在 Docker 中启用日志轮换?
可以在 /etc/docker/daemon.json 文件中配置日志轮换,示例配置为 {"log-driver": "json-file", "log-opts": {"max-size": "10m", "max-file": "5"}}。
除了 json-file 驱动,还有哪些日志驱动支持日志轮换?
可以切换到 local 驱动,local 驱动默认启用日志轮换。
更改日志驱动后需要做什么?
需要重启 Docker 服务以应用新配置,使用命令:systemctl restart docker。
现有容器如何应用新的日志配置?
现有容器在重启后不会自动应用新日志配置,需要重新创建容器。
➡️