linux磁盘清理_docker/overlay2爆满

问题:无意间发现linux服务器登陆有问题,使用df命令发现目录满了。

1. 确定哪里占用了大量内存。

cpp 复制代码
cd /
du -sh * | sort -rh

经过一段时间后,显示如下:

// 474G home

// 230G var

// 40G usr

// 10G snap

// ---

根据实际情况,排除有用的存储,发现是/var目录太大,进一步确认,发现是

/var/lib/docker/overlay2太大,导致磁盘爆满。

2. 分析并解决

使用命令

cpp 复制代码
docker system df // 查看
docker container prune // 删除所有停止运行的容器
    // 使用建议:注意使用管理员权限;确认docker容器状态,要删除的容器已经停止且
    // 不包含重要的数据与状态,一旦删除不可恢复;运行后会返回一个列表,显示被删
    // 除容器的ID;建议定期运行

再次使用查询命令docker system df:

可以根据自身情况,再将运行中的docker容器停止,然后重复上面的操作进行删除。

我的这两个还需要使用,不进行删除。

3. 拓展

cpp 复制代码
docker container prune //删除容器,所有停止运行的容器

docker system prune // 删除所有停止运行的容器,
    // 删除所有悬空的镜像,
    // 删除所有未使用的网络,
    // 删除所有构建缓存(可选)

刚刚使用的是第一个命令解决的问题,第二个命令也可以,但谨慎使用。
如使用第二个命令可以用如下4个命令分别进行细致的清理:
docker image prune
docker container prune
docker volume prune
docker network prune
相关推荐
tzhou6445240 分钟前
Docker的CICD持续集成
ci/cd·docker·容器
oMcLin1 小时前
在RHEL 8系统上如何实现基于Docker的微服务架构,并进行自动化部署?
docker·微服务·架构
人工小情绪1 小时前
docker常用命令
docker·容器
Xの哲學1 小时前
Linux SLUB 内存分配器深度剖析: 从设计哲学到实战调试
linux·服务器·网络·算法·边缘计算
橘色的喵1 小时前
嵌入式 ARM Linux 平台高性能无锁异步日志系统设计与实现
linux·arm开发·cache line·ring buffer
何中应1 小时前
linux使用root账户操作提示没有权限
linux·运维·服务器
天上飞的粉红小猪1 小时前
网络基础概念
linux·服务器·网络·c++
qq_5470261792 小时前
Shell 高级用法
linux
Hello_wshuo2 小时前
记RP2040使用Arduino+platformio开发配置
linux·嵌入式硬件·arduino
KingRumn2 小时前
DBUS源码剖析之DBusMessage消息头
linux·服务器·算法