记一次docker的overlay2目录占用大量磁盘空间

1、报错

Linux服务器报错磁盘没空间了:

java 复制代码
no space left on device

2、排错

从根目录看下哪个目录有问题:

bash 复制代码
cd /
du -sh *
# s即只显示总和,h即显示人类可读格式,就是数字+单位的格式

目录有点多,sort排序下:

bash 复制代码
# 以MB为单位转换,然后降序排
du -sm * | sort -nr

PS,关于Linux目录文件按大小排序的实现,方式一:

bash 复制代码
# 以Byte为单位排序
du -sb * | sort -nr
# 以KB为单位排
du -sk * | sort -nr
# 以MB为单位排
du -sm * | sort -nr
# 以上均降序,升序为
du -sm * | sort -n

方式二:(推荐,直接带各种单位排序)

bash 复制代码
# 降序
ll -hS
# 升序
ll -rhS

总之,发现是docker的overlay2目录占用了大量空间

3、解决

执行以下指令,清除以下内容:

  • all stopped containers:已停止的容器
  • all networks not used by at least one container:未被任何容器使用的网络
  • all images without at least one container associated to them:未被使用的镜像
  • all build cache:构建的缓存
bash 复制代码
# 输入y
docker system prune -a 

解决成功,查看效果:

bash 复制代码
df -h /

4、docker system 指令补充

  • 查看磁盘占用情况
bash 复制代码
docker system df 
  • 查看docker系统信息
bash 复制代码
docker system info
  • 查看服务端事件
bash 复制代码
docker system events
  • 忘了就help
bash 复制代码
docker system --help
相关推荐
神梦流21 分钟前
GE 引擎的非标准数据流处理:稀疏张量与自定义算子在图优化中的语义保持
linux·运维·服务器
兜兜转转了多少年28 分钟前
从脚本到系统:2026 年 AI 代理驱动的 Shell 自动化
运维·人工智能·自动化
MonkeyKing_sunyuhua1 小时前
docker compose up -d --build 完全使用新代码打包的方法
docker·容器·eureka
Lsir10110_1 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
醇氧1 小时前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器
技术路上的探险家2 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker
Doro再努力2 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
全栈工程师修炼指南2 小时前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
Lsir10110_2 小时前
【Linux】进程信号(上半)
linux·运维·服务器
开开心心就好3 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节