centos7清理docker垃圾文件
相信很多朋友都有这个docker容器导致主机磁盘空间满了的问题,应用容器在宿主机上长期运行,应用实例启停容器,会产生大量的停止的容器,无容器使用的数据卷、网络配置,无容器依赖的镜像,这些垃圾日积月累,会影响到宿主机的运行状态,造成机子卡顿等现象。因此,需要对这些宿主机的垃圾进行清理.下面我们来看看怎么清理.
系统:centos 7.x(64位)
1.查看docker磁盘使用情况
docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 28 9 13.13GB 8.008GB (61%)
Containers 9 9 266.3MB 0B (0%)
Local Volumes 2 2 3.314GB 0B (0%)
Build Cache 0 0 0B 0B
此命令可以得知:
实例上一共有28个镜像,镜像占用了13.13G的磁盘,容器有9个在运行,占用了266.3MB的磁盘,可回收的(RECLAIMABLE)磁盘空间为61%.
2.清理磁盘空间
docker system prune命令可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及 dangling 镜像(即无 tag 的镜像,参考What are Docker : images?).docker system prune -a命令清理得更加彻底,可以将没有容器使用 Docker 镜像都删掉。注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的 Docker 镜像都删掉了...所以使用之前一定要想清楚
docker system prune

ps:
可以看到罗列出4种会被prune的对象以及其他信息,包括:
1)stopped containers, 不是运行状态的container
2)unused volumes,不被任何container引用的volume,所谓dangling volume,一般删除了某个container后,可能会产生这样的volume,可以通过docker rm -v避免这种dangling volume
3)unused network,不被任何container引用的network
4)dangling images,不被任何container引用的image
5)每个被删除的对象都能看到它的ID,比如container ID、volume ID
6)最后有个释放空间大小的summary
3.清理docker镜像
当你镜像太多的时候,但你又不知道那些镜像在用,那些没在用的时候,可以使用下面的命令来处理:
docker rmi $(docker images -qf "dangling=true")
当然这里还提供一个这样的命令,只清除超过创建时间超过24小时的镜像:
docker image prune -a --filter "until=24h"
4.清理Docker容器日志
ls -lh $(find /var/lib/docker/containers/ -name *-json.log)
找到最大的那个日志,然后执行:
cat /dev/null >json.log
or
把所有的容器日志都清理掉:
cat /dev/null > *-json.log
ps:
删除所有容器
docker rm -f $(sudo docker ps -qa)
删除所有关闭的容器
docker ps -a | grep Exit | cut -d ' ' -f 1 | xargs docker rm
删除所有dangling数据卷(即无用的Volume)
docker volume rm $(docker volume ls -qf dangling=true)
再次显示所有的容器和数据卷,确保没有残留
docker ps -a
docker volume ls
好了,以上介绍的命令请大家根据自己的情况去进行执行,最后提醒一句,执行前先确认清楚那些是可以删 可以停的,不然到时候搞出问题来的话,别来找我.
centos7清理docker垃圾文件的更多相关文章
- 如何清理Macbook垃圾文件
如何清理Macbook垃圾文件,腾出更多硬盘空间 在Macbook使用久之后,会发现本来还富裕的硬盘,变得越来越少,尤其现在Macbook使用容量很小的固态硬盘.在此种情况下,该如何清理Macbook ...
- 一键清理系统垃圾文件bat
历史比较久远了,可做一定参考. @echo off echo 正在清理系统垃圾文件,请稍等...... del /f /s /q %systemdrive%*.tmp del /f /s /q %sy ...
- Ubuntu 16.04安装BleachBit清理系统垃圾文件
在LInux下不同于Windows会产生系统垃圾,但是Linux会产生安装软件时的依赖包,比如卸载一个软件,其依赖包是不会删除的.但是可以通过以下命令解决: #清理旧版本的软件缓存 sudo apt- ...
- linux清理 clientmqueue 垃圾文件防止 inode 被占满
#find /var/spool/clientmqueue/ -type -f |xargs rm -f
- 一键清理Windows垃圾的BAT文件代码
@echo off color 0atitle win7一键清理系统垃圾echo ★☆ ★☆ ★☆ ★☆ ★☆★☆★☆ ★☆ ★☆ ★☆ ★☆★echo ★☆ ★☆ ★☆ ★☆ ★☆★☆★☆ ★☆ ★ ...
- [windows]c盘瘦身、系统盘清理临时文件、缓存等垃圾文件
前言 虽然现在已经9102年了硬盘空间越来越大越便宜,但win系统用久了系统盘还是会渐渐变小的,公司的电脑系统盘就已经不够用了经常爆红,这个时候两个简单快速高效的办法 1.扩大系统盘空间,可以使用 w ...
- Revo Uninstaller Pro - 真正彻底卸载软件不留垃圾的强大神器!(清理安装残留文件/注册表)
大家都知道 Windows 在卸载软件时总是不够彻底,系统C盘总会留下大量难以辨别和清理的垃圾文件和临时文件,时间长了注册表也会变得非常臃肿,不仅浪费硬盘空间,而且也会明显拖慢系统响应和启动速度. R ...
- 清理C盘系统垃圾文件-批处理方式
很多时候安装软件越来越多,部分软件产生的临时文件.垃圾文件常常存在于C盘系统盘中:日积夜累直接导致可用的系统盘空间越来越小,直到没有多余的空间为止, 最后可能的结果是系统异常.软件无法正常运行:此时可 ...
- [教训] windows 电脑的垃圾文件清理...
坑你没商量! 这个名叫 “清除系统垃圾.bat“ 的文件在网上传播很广,但是,却出现了错误的版本,如果按照它逐条执行,将导致系统文件夹被一锅端,只能再重装的悲剧! 举个栗子: 错误版本:http:// ...
- Atitit.论图片类型 垃圾文件的识别与清理 流程与设计原则 与api概要设计 v2 pbj
Atitit.论图片类型 垃圾文件的识别与清理 流程与设计原则 与api概要设计 v2 pbj 1. 俩个问题::识别垃圾文件与清理策略1 2. 如何识别垃圾图片1 2.1. 体积过小文件<1 ...
随机推荐
- python正则查找
a = "#1+#5+#8+#10+#11+#12+#13+#14+#15-#22-#23-#24-#25-#26-#27-#28" b = re.findall("#\ ...
- C-09\编译预处理
一.预处理 C语言在对源程序进行正常编译之前,会先对一些特殊的预处理命令作解释,产生一个新的源程序,该过程称为编译预处理 为了区分预处理命令和一般的C语句,所有预处理命令行都以"#" ...
- 线程基础知识 03 synchronized锁(对象在内存的布局和加上锁后对象在内存中的变化)
1 线程不安全演示 public class ThreadAndLockTest1 { private static int a = 0; public static void main(String ...
- 一篇文章让你了解这个基于树莓派而设计的工业计算机-CM4 Industrial
CM4 Industrial是一款基于 Raspberry Pi / 树莓派 Compute Module 4,由EDATEC面向工业应用设计的嵌入式计算机设计的工业嵌入式计算机.系统可以根据不同的应 ...
- Centos7搭建hadoop3.3.4分布式集群
目录 1.背景 2.集群规划 2.1 hdfs集群规划 2.2 yarn集群规划 3.集群搭建步骤 3.1 安装JDK 3.2 修改主机名和host映射 3.3 配置时间同步 3.4 关闭防火墙 3. ...
- JZOJ 4213. 【五校联考1day2】对你的爱深不见底
题目 思路 结论题,我不会证明: 找到第一个 \(|S_n| \leq m + 1\),那么答案就是 \(m - |S_{n-2}|\) 证明?我说了我不会,就当结论用吧 这已经很恶心了 然而这题还要 ...
- 读论文SRCNN:Learning a Deep Convolutional Network for Image Super-Resolution
Learning a Deep Convolutional Network for Image Super-Resolution SRCNN是深度学习应用于SR领域的开山之作. 论文 2014 ECC ...
- Docker安装和卸载(centos)
Docker安装和卸载 一,已安装Docker,卸载Docker 1.方法一 sudo yum remove docker \ docker-client \ docker-client-latest ...
- Linux:atime、mtime、ctime
三个时间 Linux 的文件属性中有:访问时间(Access Time).修改时间(Modify Time).改变时间(Change Time): 访问时间(Access Time):对文件进行一次读 ...
- 01#Vue Transition 过渡:基于 CSS 过渡
过渡的阶段 上图是过渡的 6 个阶段示意图.总体是进入和离开两个阶段,进入和离开又各自有两个阶段.下表格是对每一个阶段的解释: 进入和离开实现过渡效果使用的是 CSS 样式,过度的样式相当于重写覆盖了 ...