今天线上磁盘告警,排查后发现,一个docker容器的单个日志文件达50GB
[root@sw92.swarm /data0/docker/containers/a6a8a5b21d41c4e1ffa3cafb81e7c1a7895040d3fdbc09c2235c9b352d4a029a]# ls -rlht
total 48G
drwx------ 2 root root 4.0K Nov 24 09:39 checkpoints
-rw-r--r-- 1 root root 71 Nov 24 09:39 resolv.conf.hash
-rw-r--r-- 1 root root 93 Nov 24 09:39 resolv.conf
-rw-r--r-- 1 root root 175 Nov 24 09:39 hosts
-rw-r--r-- 1 root root 13 Nov 24 09:39 hostname
drwx------ 3 root root 4.0K Nov 24 09:39 mounts
-rw------- 1 root root 3.1K Nov 24 09:39 config.v2.json
-rw-r--r-- 1 root root 1.5K Nov 24 09:39 hostconfig.json
drwx------ 4 root root 4.0K Nov 24 09:39 .
drwx------ 22 root root 36K Dec 10 15:48 ..
-rw-r----- 1 root root 48G Dec 10 15:57 a6a8a5b21d41c4e1ffa3cafb81e7c1a7895040d3fdbc09c2235c9b352d4a029a-json.log
[root@sw92.swarm /data0/docker/containers/a6a8a5b21d41c4e1ffa3cafb81e7c1a7895040d3fdbc09c2235c9b352d4a029a]#
[root@sw92.swarm /data0/docker/containers/a6a8a5b21d41c4e1ffa3cafb81e7c1a7895040d3fdbc09c2235c9b352d4a029a]# docker ps | grep a6a8a5
a6a8a5b21d41 registry.koqkw.com/dsfw/qwss:10 "/bin/wsssw" 2 weeks ago Up 2 weeks 0.0.0.0:10273->80/tcp sdfwff.1.726vihczsqrb1wejnzruu6g7t
临时解决方案
echo > a6a8a5b21d41c4e1ffa3cafb81e7c1a7895040d3fdbc09c2235c9b352d4a029a-json.log
长期解决方案 (需要重启容器)
docker run -it --log-opt max-size=10m --log-opt max-file=3 alpine ash
另外还可以配置 /etc/docker/daemon.json
解决,这个就需要重启Docker本身
参考链接
https://www.cnblogs.com/qianxunman/p/12387521.html
https://docs.docker.com/config/containers/logging/configure/