@SOLUTION· 2020-01-30 23:21 · 8 min read
概述
用法
[root@liqiang.io]# docker system prune --help
Usage: docker system prune [OPTIONS]
Remove unused data
Options:
-a, --all Remove all unused images not just dangling ones
--filter filter Provide filter values (e.g. 'label=<key>=<value>')
-f, --force Do not prompt for confirmation
--volumes Prune volumes
详解
prune 可以用于清理容器,网络,镜像,Volume 等。如果不加参数,那么清理的内容包括:
- 所有被停掉的容器;
- 所有没有被容器使用的网络;
- 悬挂的镜像;
- 所有构建过程中的缓存;
但是这不会删除 Volume,因为 Docker 认为 Volume 的价值很高,可能储存了珍贵的数据,所以,如果你墙裂要求要删的话,试一下:
[root@liqiang.io]# docker system prune -a --volumes
这里 -a
参数也不会删除 Volume,是后面的 --volumes
参数其效果的,它会删除的内容包括:
- 所有被停掉的容器;
- 所有没有被容器使用的网络;
- 所有没有被容器使用的 Volume;
- 没有容器管理的镜像;
- 所有构建过程中的缓存;
过滤器
当然,如果你想要更加精准的删除的话,可以给各种资源打上标签,这样你就可以通过标签保留你想要的资源了。如果没有标签,也没有关系,有一个默认的标签util
,你可以用它删除一些太老的容器之类的,例如:
[root@liqiang.io]# docker container prune --filter "until=24h"