原标题:云计算核心技术Docker教程:清理未使用的Docker网络
Docker采取了一种保守的方法来清理未使用的对象(通常称为“垃圾收集”),例如图像,容器,卷和网络:除非您明确要求Docker这样做,否则通常不会删除这些对象。这可能会导致Docker使用额外的磁盘空间。对于每种类型的对象,Docker提供一个prune命令。此外,您可以docker system prune用来一次清除多种类型的对象。
清理网络
Docker网络不会占用太多磁盘空间,但它们确实会创建iptables 规则,桥接网络设备和路由表条目。要清理这些东西,您可以docker network prune用来清理任何容器都没有使用的网络。
$ docker network prune
WARNING! This will remove all networks not used by at least one container.
Are you sure you want to continue? [y/N] y
默认情况下,系统会提示您继续。要绕过提示,请使用-f或 --force标志。
默认情况下,将删除所有未使用的网络。您可以使用该--filter标志限制范围。例如,以下命令仅删除24小时之前的网络:
$ docker network prune --filter "until=24h"
全部清理
该docker system prune命令是修剪图像,容器和网络的快捷方式。默认情况下,不修剪卷,并且必须指定--volumes用于docker system prune修剪卷的 标志。
$ docker system prune
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all dangling images
- all build cache
Are you sure you want to continue? [y/N] y
要同时修剪卷,请添加--volumes标志:
$ docker system prune --volumes
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all volumes not used by at least one container
- all dangling images
- all build cache
Are you sure you want to continue? [y/N] y
默认情况下,系统会提示您继续。要绕过提示,请使用-f或 --force标志。