用法
docker network ls [OPTIONS]
选项
名字,速记 | 默认 | 描述 |
--filter , -f | Provide filter values (e.g. ‘driver=bridge’) -----提供过滤值(例如'driver = bridge') | |
--format | Pretty-print networks using a Go template -----使用Go模板的漂亮打印网络 | |
--no-trunc | Do not truncate the output -----不要截断输出 | |
--quiet , -q | Only display network IDs -----仅显示网络ID |
扩展说明
列出引擎daemon
知道的所有网络。这包括跨越群集中多个主机的网络。
例子
列出所有网络
$ sudo docker network ls
NETWORK ID NAME DRIVER SCOPE
7fca4eb8c647 bridge bridge local
9f904ee27bf5 none null local
cf03ee007fb4 host host local
78b03ee04fc4 multi-host overlay swarm
使用该--no-trunc
选项显示完整的网络ID:
$ docker network ls --no-trunc
NETWORK ID NAME DRIVER SCOPE
18a2866682b85619a026c81b98a5e375bd33e1b0936a26cc497c283d27bae9b3 none null local
c288470c46f6c8949c5f7e5099b5b7947b07eabe8d9a27d79a9cbf111adcbf47 host host local
7b369448dccbf865d397c8d2be0cda7cf7edc6b0945f77d2529912ae917a0185 bridge bridge local
95e74588f40db048e86320c6526440c504650a1ff3e9f7d60a497c4d2163e5bd foo bridge local
63d1ff1f77b07ca51070a8c227e962238358bd310bde1529cf62e6c307ade161 dev bridge local
过滤
过滤标志(-f
或--filter
)格式是一key=value
对。如果有多个过滤器,则传递多个标志(例如--filter "foo=bar" --filter "bif=baz"
)。多个过滤器标志组合为OR
过滤器。例如,-f type=custom -f type=builtin
返回两者custom
和builtin
网络。
目前支持的过滤器是:
- driver
- id(网络ID)
- label (
label=<key>
orlabel=<key>=<value>
) - name (network’s name)
- scope (
swarm|global|local
) - type(
custom|builtin
)
DRIVER
该driver
过滤器匹配基于其驱动程序的网络。
以下示例将网络与bridge
驱动程序匹配:
$ docker network ls --filter driver=bridge
NETWORK ID NAME DRIVER SCOPE
db9db329f835 test1 bridge local
f6e212da9dfd test2 bridge local
ID
该id
过滤器在网络的ID的全部或部分匹配。
以下过滤器匹配具有包含该63d1ff1f77b0...
字符串的ID的所有网络 。
$ docker network ls --filter id=63d1ff1f77b07ca51070a8c227e962238358bd310bde1529cf62e6c307ade161
NETWORK ID NAME DRIVER SCOPE
63d1ff1f77b0 dev bridge local
您还可以过滤ID中的子字符串,如下所示:
$ docker network ls --filter id=95e74588f40d
NETWORK ID NAME DRIVER SCOPE
95e74588f40d foo bridge local
$ docker network ls --filter id=95e
NETWORK ID NAME DRIVER SCOPE
95e74588f40d foo bridge local
LABEL
的label
过滤器匹配基础上的存在的网络label
单独或label
和值。
以下过滤器将网络与usage
标签匹配,无论其值如何。
$ docker network ls -f "label=usage"
NETWORK ID NAME DRIVER SCOPE
db9db329f835 test1 bridge local
f6e212da9dfd test2 bridge local
以下过滤器将带有usage
标签的网络与prod
值匹配。
$ docker network ls -f "label=usage=prod"
NETWORK ID NAME DRIVER SCOPE
f6e212da9dfd test2 bridge local
NAME
该name
过滤器上的网络名称的全部或部分匹配。
以下过滤器匹配具有包含该foobar
字符串的名称的所有网络。
$ docker network ls --filter name=foobar
NETWORK ID NAME DRIVER SCOPE
06e7eef0a170 foobar bridge local
您还可以过滤名称中的子字符串,如下所示:
$ docker network ls --filter name=foo
NETWORK ID NAME DRIVER SCOPE
95e74588f40d foo bridge local
06e7eef0a170 foobar bridge local
SCOPE
该scope
过滤器匹配基于其范围的网络。
以下示例将网络与swarm
范围匹配:
$ docker network ls --filter scope=swarm
NETWORK ID NAME DRIVER SCOPE
xbtm0v4f1lfh ingress overlay swarm
ic6r88twuu92 swarmnet overlay swarm
以下示例将网络与local
范围匹配:
$ docker network ls --filter scope=local
NETWORK ID NAME DRIVER SCOPE
e85227439ac7 bridge bridge local
0ca0e19443ed host host local
ca13cc149a36 localnet bridge local
f9e115d2de35 none null local
TYPE
在type
过滤器支持两个值; builtin
显示预定义的网络(bridge
,none
,host
),而custom
显示用户定义的网络。
以下过滤器匹配所有用户定义的网络:
$ docker network ls --filter type=custom
NETWORK ID NAME DRIVER SCOPE
95e74588f40d foo bridge local
63d1ff1f77b0 dev bridge local
通过使用此标志,它允许批量清理。例如,使用此过滤器删除所有用户定义的网络:
$ docker network rm `docker network ls --filter type=custom -q`
尝试删除连接了容器的网络时将发出警告。
格式化
格式化选项(--format
)使用Go模板漂亮地打印网络输出。
Go模板的有效占位符如下所示:
占位符 | 描述 |
---|---|
.ID | Network ID -----网络ID |
.Name | Network name -----网络名字 |
.Driver | Network driver -----网络驱动 |
.Scope | Network scope (local, global) -----网络范围(本地,全球) |
.IPv6 | Whether IPv6 is enabled on the network or not. -----是否在网络上启用了IPv6。 |
.Internal | Whether the network is internal or not. -----网络是否内部。 |
.Labels | All labels assigned to the network. -----分配给网络的所有标签。 |
.Label | Value of a specific label for this network. -----此网络的特定标签的值。例如{{.Label "project.version"}} |
.CreatedAt | Time when the network was created -----创建网络的时间 |
使用该--format
选项时,该network ls
命令将完全按模板声明的方式输出数据,或者在使用该 table
指令时,还包括列标题。
以下示例使用不带标头的模板,ID
并Driver
为所有网络输出 以冒号分隔的条目和条目:
$ docker network ls --format "{{.ID}}: {{.Driver}}"
afaaab448eb2: bridge
d1584f8dc718: host
391df270dc66: null