用法
docker network prune [OPTIONS]
选项
名字,速记 | 默认 | 描述 |
--filter | Provide filter values (e.g. ‘until=') -----提供过滤值(例如'until =“) | |
--force , -f | Do not prompt for confirmation -----不要提示确认 |
扩展说明
删除所有未使用的网络 未使用的网络是那些未被任何容器引用的网络。
例子
$ 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
Deleted Networks:
n1
n2
过滤
过滤标志(--filter
)格式为“key = value”。如果有多个过滤器,则传递多个标志(例如--filter "foo=bar" --filter "bif=baz"
)
目前支持的过滤器是:
- until(
<timestamp>
) - 仅删除在给定时间戳之前创建的网络 - 标签(
label=<key>
,label=<key>=<value>
,label!=<key>
,或label!=<key>=<value>
) -仅删除与网络(或没有,如果label!=...
被使用)指定的标签。
该until
过滤器可以是Unix的时间戳,日期格式的时间戳,或持续时间字符串(例如,去10m
,1h30m
)计算相对于守护机器的时间。支持的格式为日期格式时间戳包括RFC3339Nano,RFC3339, ,2006-01-02T15:04:05
,2006-01-02T15:04:05.999999999
,2006-01-02Z07:00
和2006-01-02
。如果在时间戳结束时未提供a Z
或 +-00:00
时区偏移,则将使用守护程序上的本地时区。提供Unix时间戳时输入秒[.nanoseconds],其中秒是自1970年1月1日(午夜UTC / GMT)以来经过的秒数,不计算闰秒(也称为Unix纪元或Unix时间)和可选项。纳秒字段是一秒的一小部分,不超过九位数。
的label
过滤器接受两种格式。一个是label=...
(label=<key>
或label=<key>=<value>
),它删除具有指定标签的网络。另一种格式是label!=...
(label!=<key>
或label!=<key>=<value>
),它删除没有指定标签的网络。
以下内容删除了超过5分钟前创建的网络。需要注意的是系统的网络,例如bridge
,host
和none
永远不会被修剪:
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
7430df902d7a bridge bridge local
ea92373fd499 foo-1-day-ago bridge local
ab53663ed3c7 foo-1-min-ago bridge local
97b91972bc3b host host local
f949d337b1f5 none null local
$ docker network prune --force --filter until=5m
Deleted Networks:
foo-1-day-ago
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
7430df902d7a bridge bridge local
ab53663ed3c7 foo-1-min-ago bridge local
97b91972bc3b host host local
f949d337b1f5 none null local