0%

docker限制容器日志大小

问题

容器日志一般存放在/var/lib/docker/containers/container_id/下面,以json.log结尾的文件(业务日志)很大.

处理

  • 临时清空日志

    # 注意不能用rm命令
    cat /dev/null > /var/lib/docker/containers/容器id/容器id-json.log
  • 如果是docker-compose
    通过配置容器docker-compose.ymlmax-size选项来实现:

    nginx: 
    image: nginx:1.12.1 
    restart: always 
    logging: 
      driver: "json-file"
      options: 
        max-size: "5g"
  • 限制docker容器日志大小

    // vim /etc/docker/daemon.json
    {
    "log-driver":"json-file",
    "log-opts": {"max-size":"500m", "max-file":"3"}
    }

重启docker生效

systemctl daemon-reload
systemctl restart docker

参考链接