上述方法,日志文件遲早又會(huì)漲回來(lái)。要從根本上解決問(wèn)題,需要限制容器服務(wù)的日志大小上限。這個(gè)通過(guò)配置容器docker-compose的max-size選項(xiàng)來(lái)實(shí)現(xiàn)
nginx: image: nginx:1.12.1 restart: always logging: driver: “json-file” options: max-size: “5g”
重啟nginx容器之后,其日志文件的大小就被限制在5GB,再也不用擔(dān)心了。
全局設(shè)置
新建/etc/docker/daemon.json,若有就不用新建了。添加log-dirver和log-opts參數(shù),樣例如下:
# vim /etc/docker/daemon.json
{
"registry-mirrors": ["http://f613ce8f.m.daocloud.io"],
"log-driver":"json-file",
"log-opts": {"max-size":"500m", "max-file":"3"}
}
max-size=500m,意味著一個(gè)容器日志大小上限是500M,
max-file=3,意味著一個(gè)容器有三個(gè)日志,分別是id+.json、id+1.json、id+2.json。
// 重啟docker守護(hù)進(jìn)程 # systemctl daemon-reload # systemctl restart docker
注意:設(shè)置的日志大小,只對(duì)新建的容器有效。