compose docker 清理本地镜像 docker自动清理镜像 您所在的位置:网站首页 虚拟机根目录满了怎么删除 compose docker 清理本地镜像 docker自动清理镜像

compose docker 清理本地镜像 docker自动清理镜像

2023-07-11 01:15| 来源: 网络整理| 查看: 265

docker 容器和镜像的清理

环境:本地虚拟机 ubuntu 20.04

背景

根目录磁盘空间不多,就只剩5个G左右了,操作需要,涉及到频繁创建/删除容器, 发现每创建一个容器,在删除后,磁盘空间并没有恢复。久而久之。根目录就满了。

docker 空间占用查看yyx@ubuntu64:/$ docker system df TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 4 4 2.06GB 0B (0%) Containers 4 3 598.1kB 0B (0%) Local Volumes 39 3 5.854GB 5.325GB (90%) Build Cache 0 0 0B 0B

虚拟机内实际运行的只有四个容器,但是这里显示容器卷有39个

$ docker system df -v 命令可以进一步查看空间占用细节,以确定是哪个镜像、容器或本地卷占用过高空间清理方法# 删除无用卷 docker volume prune

删除后再次查看,空间即释放掉了。

compose docker 清理本地镜像 docker自动清理镜像_根目录

其他清理容器/镜像的方法1. 自动清理命令# 对空间进行自动清理 docker system prune """ 该命令所清理的对象如下: 已停止的容器 未被任何容器使用的卷 未被任何容器所关联的网络 所有悬空的镜像 """ docker system prune后可以加额外的参数,如: docker system prune -a : 一并清除所有未被使用的镜像和悬空镜像。 docker system prune -f : 用以强制删除,不提示信息

另外除了system级别的,还有针对容器或是镜像级别的删除命令:

docker image prune:删除悬空的镜像。 # 悬空镜像(dangling image):未配置任何Tag(也就是无法被引用)的镜像。通常是由于镜像编译过程中未指定-t参数配置Tag导致的 docker container prune:删除无用的容器。 --默认情况下docker container prune命令会清理掉所有处于stopped状态的容器 --如果不想那么残忍统统都删掉,也可以使用--filter标志来筛选出不希望被清理掉的容器。例子:清除掉所有停掉的容器,但24内创建的除外: --$ docker container prune --filter "until=24h" docker volume prune:删除无用的卷。 docker network prune:删除无用的网络2. 手动清除

对于悬空镜像和未使用镜像可以使用手动进行个别删除: 1、删除所有悬空镜像,不删除未使用镜像:docker rmi $(docker images -f "dangling=true" -q)

2、删除所有未使用镜像和悬空镜像docker rmi $(docker images -q)

3、清理卷 如果卷占用空间过高,可以清除一些不使用的卷,包括一些未被任何容器调用的卷(-v 详细信息中若显示 LINKS = 0,则是未被调用): 删除所有未被容器引用的卷:docker volume rm $(docker volume ls -qf dangling=true)

4、容器清理 如果发现是容器占用过高的空间,可以手动删除一些: 删除所有已退出的容器:docker rm -v $(docker ps -aq -f status=exited) 删除所有状态为dead的容器docker rm -v $(docker ps -aq -f status=dead)



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有