用過docker部署的童鞋可能都遇到過,,,,docker在運行一段時間,,,可能會出現磁盤空間被占滿的情況,,,
經過樓主排查后發現,,docker容器自身在運行時會不斷產生一個以容器id-json命名的log文件,,一般是在/var/lib/docker/containers/目錄下,,,該日志文件會嚴重占用磁盤空間..
以下介紹幾種解決方案:
1. 應急解決: 清空log日志
echo '' > 容器id-json.log
2. 運行時控制:
# max-size 最大數值 # max-file 最大日志數 $ docker run -it --log-opt max-size=10m --log-opt max-file=3 redis
3. 全局配置:
創建或修改文件 /etc/docker/daemon.json,並增加以下配置
{ "log-driver":"json-file", "log-opts":{ "max-size" :"50m","max-file":"1" } }
然后重啟dokcer
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
特別注意:
已存在的容器不會生效,需要重建該容器才可以使配置生效