Add filter support for `network ls` to hide predefined network, then user can use "docker network rm `docker network ls -f type=custom`" to delete a bundle of userdefined networks. Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
4 KiB
% DOCKER(1) Docker User Manuals % Docker Community % OCT 2015
NAME
docker-network-ls - list networks
SYNOPSIS
docker network ls [-f|--filter[=[]]] [--no-trunc[=true|false]] [-q|--quiet[=true|false]] [--help]
DESCRIPTION
Lists all the networks the Engine daemon
knows about. This includes the
networks that span across multiple hosts in a cluster, for example:
$ docker network ls
NETWORK ID NAME DRIVER
7fca4eb8c647 bridge bridge
9f904ee27bf5 none null
cf03ee007fb4 host host
78b03ee04fc4 multi-host overlay
Use the --no-trunc
option to display the full network id:
$ docker network ls --no-trunc
NETWORK ID NAME DRIVER
18a2866682b85619a026c81b98a5e375bd33e1b0936a26cc497c283d27bae9b3 none null
c288470c46f6c8949c5f7e5099b5b7947b07eabe8d9a27d79a9cbf111adcbf47 host host
7b369448dccbf865d397c8d2be0cda7cf7edc6b0945f77d2529912ae917a0185 bridge bridge
95e74588f40db048e86320c6526440c504650a1ff3e9f7d60a497c4d2163e5bd foo bridge
63d1ff1f77b07ca51070a8c227e962238358bd310bde1529cf62e6c307ade161 dev bridge
Filtering
The filtering flag (-f
or --filter
) format is a key=value
pair. If there
is more than one filter, then pass multiple flags (e.g. --filter "foo=bar" --filter "bif=baz"
).
Multiple filter flags are combined as an OR
filter. For example,
-f type=custom -f type=builtin
returns both custom
and builtin
networks.
The currently supported filters are:
- id (network's id)
- name (network's name)
- type (custom|builtin)
Type
The type
filter supports two values; builtin
displays predefined networks
(bridge
, none
, host
), whereas custom
displays user defined networks.
The following filter matches all user defined networks:
$ docker network ls --filter type=custom
NETWORK ID NAME DRIVER
95e74588f40d foo bridge
63d1ff1f77b0 dev bridge
By having this flag it allows for batch cleanup. For example, use this filter to delete all user defined networks:
$ docker network rm `docker network ls --filter type=custom -q`
A warning will be issued when trying to remove a network that has containers attached.
Name
The name
filter matches on all or part of a network's name.
The following filter matches all networks with a name containing the foobar
string.
$ docker network ls --filter name=foobar
NETWORK ID NAME DRIVER
06e7eef0a170 foobar bridge
You can also filter for a substring in a name as this shows:
$ docker ps --filter name=foo
NETWORK ID NAME DRIVER
95e74588f40d foo bridge
06e7eef0a170 foobar bridge
ID
The id
filter matches on all or part of a network's ID.
The following filter matches all networks with a name containing the
06e7eef01700
string.
$ docker network ls --filter id=63d1ff1f77b07ca51070a8c227e962238358bd310bde1529cf62e6c307ade161
NETWORK ID NAME DRIVER
63d1ff1f77b0 dev bridge
You can also filter for a substring in a ID as this shows:
$ docker ps --filter id=95e74588f40d
NETWORK ID NAME DRIVER
95e74588f40d foo bridge
$ docker ps --filter id=95e
NETWORK ID NAME DRIVER
95e74588f40d foo bridge
OPTIONS
-f, --filter=[] filter output based on conditions provided.
--no-trunc=true|false Do not truncate the output
-q, --quiet=true|false Only display numeric IDs
--help Print usage statement
HISTORY
OCT 2015, created by Mary Anthony mary@docker.com