docker 清理缓存脚本解析

目录
  • 一、硬盘占用查看
    • 1.硬盘空间查看
    • 2.inode查看
    • 3.Docker占用的磁盘空间查看
  • 二.docker清理
    • 1.删除所有已经停止的容器
    • 2.删除所有未打标签的镜像
    • 3.删除所有无用的volume
    • 4.清理磁盘、删除关闭的容器、无用的数据卷和网络
  • 三、docker命令扩展
    • 1.停止所有运行中的容器
    • 2.停止所有容器
    • 3.重启所有容器
    • 4.获取停止的容器id
    • 5.启动所有停止的容器
    • 6.删除所有容器
    • 7.删除所有镜像
  • 四、清理docker缓存脚本

一、硬盘占用查看

1.硬盘空间查看

df -TH

2.inode查看

df -i

3.Docker占用的磁盘空间查看

docker system df

二.docker清理

1.删除所有已经停止的容器

注意:要先确认停止的容器中是否有不可以删除的,也可以删除后使用镜像再启一个容器。

docker rm $(docker ps -a|grep Exited |awk '{print $1}')docker rm $(docker ps -qf status=exited)

2.删除所有未打标签的镜像

docker rmi $(docker images -q -f dangling=true)

3.删除所有无用的volume

docker volume rm $(docker volume ls -qf dangling=true)

4.清理磁盘、删除关闭的容器、无用的数据卷和网络

  • 参数:-a : 清除所有没有容器引用的镜像时,使用 docker system prune -a (慎用)-f  or --force
  • 强制清除,不会出现提示,使用docker system prune -f(慎用)--filter :  
  • 用来限制要保留的镜像的范围,例如:只清除超过创建时间超过24小时的镜像(docker image prune -a --filter "until=24h")

三、docker命令扩展

1.停止所有运行中的容器

docker stop $(docker ps -q)

2.停止所有容器

 docker stop $(docker ps -a -q)

3.重启所有容器

docker restart $(docker ps -a -q)

4.获取停止的容器id

cut:
docker ps -a | grep Exited | cut -d' ' -f1

awk:
docker ps -a | grep Exited | awk '{print $1}'

5.启动所有停止的容器

docker ps -a | grep Exited | awk '{print $1}' |xargs docker start

6.删除所有容器

 docker rm $(docker ps -aq)

7.删除所有镜像

docker rmi $(docker images -q)

四、清理docker缓存脚本

#!/bin/sh
echo "======== start clean docker containers logs ========"
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
    do
	echo "clean logs : $log"
	cat /dev/null > $log
    done
echo "======== end clean docker containers logs ========" 

到此这篇关于docker 清理缓存脚本解析的文章就介绍到这了,更多相关docker 清理缓存 内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 关于docker清理Overlay2占用磁盘空间的问题(亲测有效)

    使用Docker过程中,长时间运行服务容器,导致不能进行上传文件等操作,通过命令df -h 发现overlay占用较高.通过命令docker system prune -a 清理无用镜像.缓存.挂载数据,也没有什么改变. 如果你也被这个问题所困扰,咱们就一起看一下 Docker 是如何使用磁盘空间的,以及如何回收. docker 占用的空间可以通过下面的命令查看: $ docker system df prune指令默认会清除所有如下资源: 已停止的容器(container) 未被任何容器所使用

  • Docker容器日志查看与清理的方法(亲测有效)

    1. 问题 docker容器日志导致主机磁盘空间满了.docker logs -f container_name噼里啪啦一大堆,很占用空间,不用的日志可以清理掉了. 2. 解决方法 2.1 找出Docker容器日志 在linux上,容器日志一般存放在/var/lib/docker/containers/container_id/下面, 以json.log结尾的文件(业务日志)很大,查看各个日志文件大小的脚本docker_log_size.sh,内容如下: #!/bin/sh echo "====

  • docker清理大杀器/docker的overlay文件占用磁盘太大的解决

    [看网上都是什么迁移文件的就感觉不靠谱,治标不治本啊(这不应该是一个新生代coder的样子)] du -sh* 一路查下去,发现overlay这个文件夹已经爆了. docker system prune -a 才清理了7g的空间,那个文件夹还是30g 磁盘占用路从100%下降到80%左右,这哪里行啊,再跑两天还是满! 最后大杀器来了 安装portainer docker安装教程一堆 我这里使用dokcer-compose部署的所以下面是配置 portainer: image: portainer

  • 如何完全清理你的Docker数据

    目录 定期修剪(prune) 镜像驱逐 容器清理 网路整理 卷的蒸发 完全干净的开始 Docker 不会对你的系统进行任何配置更改--但是它会占用大量的磁盘空间.(使用 Docker)不一会儿,当你输入如下命令时,就会返回一些可怕的使用情况统计信息: docker system df 幸运的是,Docker 允许您从未使用的镜像.容器以及卷中回收磁盘空间. 定期修剪(prune) 为了安全地删除已停止的容器,未使用的网络和悬挂的图像,最好每隔一段时间运行以下命令: docker system p

  • Docker 删除及清理镜像的方法

    目录 一.通过标签删除镜像 二.通过ID删除镜像 三.删除镜像的限制 四.清理镜像 一.通过标签删除镜像 通过如下两个都可以删除镜像: docker rmi [image] 或者: docker image rm [image] 支持的子命令如下: -f, -force: 强制删除镜像,即便有容器引用该镜像: -no-prune: 不要删除未带标签的父镜像: 例如,我们想删除上章节创建的 allen_mysql:5.7 镜像,命令如下: docker rmi allen_mysql:5.7 从上

  • docker 清理缓存脚本解析

    目录 一.硬盘占用查看 1.硬盘空间查看 2.inode查看 3.Docker占用的磁盘空间查看 二.docker清理 1.删除所有已经停止的容器 2.删除所有未打标签的镜像 3.删除所有无用的volume 4.清理磁盘.删除关闭的容器.无用的数据卷和网络 三.docker命令扩展 1.停止所有运行中的容器 2.停止所有容器 3.重启所有容器 4.获取停止的容器id 5.启动所有停止的容器 6.删除所有容器 7.删除所有镜像 四.清理docker缓存脚本 一.硬盘占用查看 1.硬盘空间查看 df

  • Docker 清理环境操作

    开始清理,需要慎重! 列出无用的卷 docker volume ls -qf dangling=true 清理无用的卷 docker volume rm $(docker volume ls -qf dangling=true) 清理无用的镜像 docker rmi $(docker images | grep '^<none>' | awk '{print $3}') 继续清理 docker system prune docker volume prune 以上足够使用,其他命令不要知道了!

  • PHP Yii清理缓存的实现方法

    PHP  Yii清理缓存的实现方法 本文实例讲述了Yii清理缓存的方法.分享给大家供大家参考,具体如下: html: <button onclick="clearCache()">ClearCache</button> js: function clearCache() { $.get('../eng/index.php?r=site/clear&'+new Date().getTime(),function(){ alert('Clear eng ca

  • Yii清理缓存的方法

    本文实例讲述了Yii清理缓存的方法.分享给大家供大家参考,具体如下: html: 复制代码 代码如下: <button onclick="clearCache()">ClearCache</button> js: function clearCache() { $.get('../eng/index.php?r=site/clear&'+new Date().getTime(),function(){ alert('Clear eng cache ok.

  • javaWeb中使用Redis缓存实例解析

    直接进入主题: 一:serviceImpl定义: @Service public class JedisClientSingleService implements JedisClient { @Autowired private JedisPool jedisPool; @Override public String get(String key) { Jedis jedis = jedisPool.getResource(); String string = jedis.get(key);

  • Xcode清理缓存和垃圾文件的教程

    一.清理Xcode中的垃圾文件 1.前往Xcode所在的文件目录:~/Library/Developer/Xcode. 如下图: 2.进入目录后,可以看到Xcode文件中包含了如下几个文件夹: (1) Archives 存放的是Xcode打包时生成的文件,这里面的文件可以全部删掉. (2) DerivedData 存放的是build生成的项目索引.build输出以及日志,这里的文件可以全部删除. (3) iOS DeviceSupport 存放的是模拟器,对于你不需要的一些模拟器你可以删掉.即使

  • Docker部署springboot项目实例解析

    这篇文章主要介绍了docker部署springboot项目实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 创建项目 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.

  • android实现清理缓存功能

    android之清理缓存实现,供大家参考,具体内容如下 一. 清理缓存首先要搞清楚清理哪些东西 1.app本身的功能比如录像,录音,更新都会产生文件,需要清理 2.app的默认缓存地址cache 二. 搞清楚要清理的文件夹位置 1.首先app自身的功能就要看自己把它放在了什么位置 2.默认缓存地址:getActivity().getExternalCacheDir(); 这个位置是在storage/emulated/0/Android/data/com.xxxxxapp/cache 三.代码功能

  • Springboot整合GuavaCache缓存过程解析

    这篇文章主要介绍了springboot整合GuavaCache缓存过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Guava Cache是一种本地缓存机制,之所以叫本地缓存,是因为它不会把缓存数据放到外部文件或者其他服务器上,而是存放到了应用内存中. Guava Cache的优点是:简单.强大.轻量级. GuavaCache适用场景: 1.某些接口或者键值会被查询多次以上: 2.愿意使用或牺牲一些内存空间来提升访问或者计算速度: 3.缓

随机推荐