问题描述:

/var/lib/docker/containers目录下生成的docker日志不到几天达到了20G

解决方案

  1. 设置docker日志的大小及个数控制整体日志所占空间
    查看现场sffw的docker日志驱动为json-file,根据驱动配置docker相应配置
    输入:

    docker inspect -f {{.HostConfig.LogConfig}} docker-compose_FW_1

    结果:

    {json-file map[]}

    进入/etc/docker文件编辑daemon.json,若改文件不存在则创建改文件;

    touch daemon.json

    将以下配置写入daemon.json

    {
    "log-driver": "json-file",
    "log-opts": {
     "max-size": "256m",
     "max-file": "20",
     "compress": "true"
    }
    }

    根据原先日志大小现将日志调整为总容量为5G,考虑到查看日志分割为20个256M的日志,对日志文件进行压缩进一步降低所占空间
    重启docker的deamon

    sudo systemctl daemon-reload
    sudo systemctl restart docker.service

    由于该配置只对已经生成的容器不生效,将fw的原容器销毁后重新创建

    docker-compose -f docker-compose-fw.yml down
    docker-compose -f docker-compose-fw.yml up -d

    查看目前日志配置,如下输出则为配置成功
    输入:

    docker inspect -f {{.HostConfig.LogConfig}} docker-compose_FW_1

    输出:

    {json-file map[compress:true max-file:20 max-size:256m]}
  2. 调整日志打印级别由原来的info为warn