Docker 限制日志文件大小
这阵子,因为 docker 日志的问题,把磁盘空间干满了,因此就想到了 docker 是否提供了限制 docker 日志大小的配置
如果 Docker 日志不限制大小,直接导致磁盘空间被用完,影响服务的可用性。
首先,修改 docker 配置文件
vim /etc/docker/daemon.json
添加如下配置
{
"log-driver":"json-file",
"log-opts": {"max-size":"500m", "max-file":"3"}
}
max-size=500m:意味着一个容器日志大小上限是 500M, max-file=3:意味着一个容器有三个日志,分别是 id+.json、id+1.json、id+2.json。
然后重启 docker 的守护线程
systemctl daemon-reload
systemctl restart docker
docker-compose 中也可以限制
nginx:
image: nginx:1.12.1
restart: always
logging:
driver: "json-file"
options:
max-size: "5g"
docker run 中限制
docker run -d --log-opt max-size=1g nginx