在使用docker容器的时候遇到了容量上的问题,做一个记录
处理方式1:
在使用docker时,往往会出现磁盘空间不足,导致该问题的通常原因是因为docker中部署的系统输出了大量的日志内容。
此时,可通过手动或定时任务进行清除。
针对/var/lib/docker/overlay2空间占用很大网上提供了很多解决方案,其中有些误导的说法需要去迁移路径等操作。其实磁盘空间的占用和overlay没关系(它的usage和真实的disk usage相同),它只是一个docker的虚拟文件系统,真实的文件系统是前者/dev/vda1,可以看到路径所指为根目录,所以你要去找是哪里出现了垃圾。
通常情况下与overlay2的同级目录下会有如下的目录:
[root@iZ docker]# ls
builder buildkit containerd containers image network overlay2 plugins runtimes swarm tmp trust volumes
1
2
在目录中会存在以目录名为前缀,以“-json.log”为后缀的目录文件。使用如下命令会看到该文件的大小:
ll -h
1
然后可使用如下命令对该文件的内容进行清理:
cat /dev/null > *-json.log
1
清理完成可不重启服务,但如果允许建议重启一下docker服务。
在此执行df -h命令之后,你会发现overlay2所占的磁盘空间已经减小。
关于清理的操作可参考文章:《LINUX CENTOS /VAR/LIB/DOCKER/CONTAINER目录导致系统存储爆满,占用大量存储解决方案》
原文链接:《docker overlay2占用大量磁盘空间处理方法》.
处理方式2:
排错过程
df -h
1
发现硬盘被占满了
再用下面命令查看哪个文件夹太大:
du -sh *
1
发现是 /var/lib/docker/overlay 占满了
网上查一下这个目录的作用,说是 overlay/overlay2表示Docker的存储驱动,可以参考一下这篇文章:https://blog.csdn.net/styshoo/article/details/60715942
也就是说容器/镜像等都会存在这个目录下,当量大的时候就会占满硬盘
也可以参考官网(https://docs.docker.com/storage/storagedriver/overlayfs-driver/)
继续在网上搜资料,说可以看看是不是死掉容器过多的原因,使用 docker ps -a看了下,果然是。于是清理了一下无用的容器,硬盘就恢复正常了……
简单办法
多看了一下资料,发现可以使用 docker system prune来自动清理空间,参考下面:
该指令默认会清除所有如下资源:
已停止的容器(container)
未被任何容器所使用的卷(volume)
未被任何容器所关联的网络(network)
所有悬空镜像(image)。
指令默认只会清除悬空镜像,未被使用的镜像不会被删除。
添加 -a 或 --all 参数后,可以一并清除所有未使用的镜像和悬空镜像。
可以添加 -f 或 --force 参数用以忽略相关告警确认信息。
指令结尾处会显示总计清理释放的空间大小。
(https://yq.aliyun.com/articles/272173 )
另外,使用下面命令可以查看docker所占的硬盘大小,如:
使用docker,基本上把官方文档的入门教程看完,就能用了。
再自己打个包试试,基本上就OK了。后面遇到问题再深入,都可以。
docker的/var/lib/docker/overlay文件夹突然占满了硬盘
————————————————
版权声明:本文为CSDN博主「Cry丶」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/haohaoxuexiyai/article/details/111244328
本博客Android APP 下载 |
![]() |
支持我们就给我们点打赏 |
![]() |
支付宝打赏 支付宝扫一扫二维码 |
![]() |
微信打赏 微信扫一扫二维码 |
![]() |
如果想下次快速找到我,记得点下面的关注哦!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2016-08-18 【转】C# 中的委托和事件
2016-08-18 你知道C#中的Lambda表达式的演化过程吗