清理docker占用磁盘空间(docker默认目录存在未被管理的空间)
创始人
2024-03-16 12:48:33
0

粗化清理

#清理卷
docker volume prune#清理镜像
docker image prune#清理容器
docker container prune#清理所有包括:dangling镜像
docker system prune #清理所有,包括未正在使用未正在运行的,可能暂时停止的也会被清【慎用】
docker system prune  -a#如果有buid构建操作,也可以清理
docker builder prune

精确化清理

确定磁盘占用情况
docker system df -v

会列出如下四项占用情况

  • Images space usage:
  • Containers space usage:
  • Local Volumes space usage:
  • Build cache usage: 0B
    根据具体业务需求,删除指定的内容即可

通过默认目录/var/lib/docker/overlay2确定清理

  • 进入/var/lib/docker/overlay2
    执行统计命令
    du -h -d 1 .
    # -h人性化显示
    # -d 1深度为1,也就是统计当前的目录列表
    
  • 查询目录是被什么容器占用
#批量查询占用空间大的目录被谁使用
docker ps -q | xargs docker inspect --format '{{.State.Pid}}, {{.Id}}, {{.Name}}, {{.GraphDriver.Data.WorkDir}}' | grep  目录名称

查找到具体容器后, 分析具体的占用,很可能是容器内的日志未挂载出来,在容器内占用大量空间


问题来了,清理未被任何容器挂载的目录(意外)

[root@localhost overlay2]# du -h . -d 1|grep G
1.1G    ./eee3dd098c1ee4a27787e59a263c8ad7c2b100c83661ca35254cf84f790dd6b5
1.8G    ./6d5325096b29ce9662bf3ab7fc0dfdc515b6a1e3ec235a905cd3b2d988fa34a3
5.0G    ./f6196ccb8087085ae04c464263017bfbbd9a6bc4da284114a4678e1bfb67c2b4
41G     ./427ff3952fdad65f0fb8581f5ccc9c5f0d405c2720ca0a612703aacd71481a52
1.4G    ./af233808fb6734a00f3795d71460b0290328a38a5051466ab112d86df066e459
8.5G    ./e30b59f92a59033c84fd3bec986d46be00f91c950803c7a8116f7949d44b219e

通过查找超过1G的目录,发现一个41G大小的目录 ,但未关联上任何的容器,已经关闭的容器也未存在;
说明是已经被删除的容器,但为什么未被同时删除?
进入427ff3952fdad65f0fb8581f5ccc9c5f0d405c2720ca0a612703aacd71481a52目录,进到到diff子目录,发现是nacos的日志文件,以前确实存在容器内的日志未挂载出来的现象;后来已经修正,但不知这里还存在未被清理的内容;

确定确实无任何容器挂载,以后也不会有容器挂载这个目录,直接rm

rm -f  427ff3952fdad65f0fb8581f5ccc9c5f0d405c2720ca0a612703aacd71481a52

相关内容

热门资讯

九种查找算法-插值查找 插值查找   一、什么是插值查找 (1)插值查找算法类似于二分查找&#x...
Puppeteer之Pyppe... 前言 本文是该专栏的第4篇,结合项目案例让你熟练使用pyppeteer,后面会持续分享Pyppet...
【深度学习笔记】CNN网络各种... FLOPs 这里先注意一下FLOPs的写法,不要弄混了: FLOPS(全大写):是floating...
Linux查看log日志命令总... 目录1,动态实时查看日志1.1 tail -f filename1.2 追踪特定内容日...
Elasticsearch 索... 1、创建\更新索引模板 PUT _template/logging_template {   "in...
语义分割------FCN、d... 一、个人理解 语义分割,其实就是为图片中的每个像素打上相应的标签,即将其所代表的语义具现化,呈现出的...
C++标准模版库中线程的使用 文章目录线程的基本使用最基础的使用方法在创建线程时传参再看看join线程与线程之间的同步 线程是程序...
CMMI之度量与分析(MA) 目的度量与分析(Measurement and Analysis, MA...
TII投稿时间线 IEEE论文审稿状态由awaiting ae recommendation变为AwaitingRev...
C++11中的完美转发 C++11中的完美转发 在讨论引用折叠这个话题之前,先回顾一下C...