使用Docker清理日志释放磁盘空间
在日常开发中,Docker容器日志占用过多磁盘空间是个常见问题。随着容器运行时间增长,日志文件可能迅速膨胀,导致系统存储压力增大。
问题定位
首先使用以下命令查看Docker磁盘使用情况:
docker system df
若发现日志占用过大,可进一步定位具体容器:
docker ps -q | xargs docker inspect --format='{
{.Name}} {
{.LogPath}}' | grep -v "^/"
清理方案
单次清理
truncate -s 0 /var/lib/docker/containers/*/*-json.log自动清理配置
在/etc/docker/daemon.json中添加:{ "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } }定时任务
创建cronjob定期清理:0 0 * * * truncate -s 0 /var/lib/docker/containers/*/*-json.log
注意事项
- 清理前确保重要日志已备份
- 生产环境建议使用日志收集系统(如ELK)
- 重启Docker服务使配置生效:
systemctl restart docker
合理管理Docker日志不仅能释放磁盘空间,还能提高系统稳定性,是每个开发者都应掌握的基础技能。