Docker 限制容器日志大小后重启失败

问题描述

今天准备限制一下docker容器日志的大小,发现在/etc/docker/daemon.json文件中添加以下内容后重启报错。
在这里插入图片描述

"log-opts":{"max-size" :"5g","max-file":"3" }

报错信息:

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

问题分析

运行指令docker info 发现原来是我的docker版本太老了,日志驱动默认为:Journald,因此我不能使用限制日志驱动类型为json-file的方式限制容器日志大小,因此我准备在daemon.json手动指定docker的容器日志驱动为:json-file,因此我添加的信息变为:

 "log-driver":"json-file",
 "log-opts":{"max-size" :"5g","max-file":"3" }

但是准备重启时,发下还是发现重启失败。
因此,应该是docker启动的时候传入了命令行参数,同时也指定了配置文件,两个配置发生了冲突
为了查看下docker启动时的配置文件位置,我先查看下docker服务信息:

vim /usr/lib/systemd/system/docker.service 

在这里插入图片描述
找到了这个配置文件的位置,查看下:

vim /etc/sysconfig/docker

在这里插入图片描述
可以看到这里有参数指定了日志驱动为Journald,因此删掉--log-driver=Journald即可。
注意:这里也可在这里修改为:--log-driver=json-file,但是在daemon.json中的 "log-driver":"json-file"这条,就要去掉,即不可重复存在,会产生冲突的,依旧会启动失败。

参考
https://www.cnblogs.com/cocowool/p/docker_daemon_log_driver.html
https://blog.csdn.net/weixin_43670802/article/details/119567759
Docker 驱动日志详解
https://www.cnblogs.com/operationhome/p/10907591.html

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员杰森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值