Docker资源占用清理

一、查看 docker 占用的资源

  • 在进行资源清理之前我们有必要搞清楚 docker 都占用了哪些系统的资源。这需要综合使用不同的命令来完成。

docker container ls:默认只列出正在运行的容器,-a 选项会列出包括停止的所有容器。
docker image ls:列出镜像信息,-a 选项会列出 intermediate 镜像(就是其它镜像依赖的层)。
docker volume ls:列出数据卷。
docker network ls:列出 network。
docker info:显示系统级别的信息,比如容器和镜像的数量等。

  • 通过这些命令查看 docker 使用的资源情况后,相信你已经决定要清理 docker 占用的一些资源了!让我们先从那些未被使用的资源开始。

二、只删除那些未被使用的资源

  • Docker 提供了方便的 docker system prune 命令来删除那些已停止的容器、dangling 镜像、未被容器引用的 network 和构建过程中的 cache:
$ docker system prune
  • 使用以下命令清理已经停止运行的docker容器
 docker rm $(docker ps --all -q -f status=exited)

2.1、通过标签删除镜像

  • 通过如下两个都可以删除镜像:
docker rmi [image]
  • 或者:
docker image rm  [image]
  • 支持的子命令如下:
    • -f, -force: 强制删除镜像,即便有容器引用该镜像;
    • -no-prune: 不要删除未带标签的父镜像;

2.2、通过 ID 删除镜像

  • 除了通过标签名称来删除镜像,我们还可以通过制定镜像 ID, 来删除镜像,如:
docker rmi ID
  • 一旦制定了通过 ID 来删除镜像,它会先尝试删除所有指向该镜像的标签,然后在删除镜像本身。

2.3、删除镜像的限制

  • 先删除引用这个镜像的容器;
  • 再删除这个镜像;
  • 也就是,根据上图中提示的,引用该镜像的容器 ID, 执行删除命令:
docker rm  ID
  • 然后,再执行删除镜像的命令:
docker rmi ID

2.4、清理镜像

  • 我们在使用 Docker 一段时间后,系统一般都会残存一些临时的、没有被使用的镜像文件,可以通过以下命令进行清理:
docker image prune
  • 它支持的子命令有:
    • -a, --all: 删除所有没有用的镜像,而不仅仅是临时文件;
    • -f, --force:强制删除镜像文件,无需弹出提示确认;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值