Compartir comentarios
Las respuestas se generan en base a la documentación.

docker network ls

DescripciónLista las redes
Usodocker network ls [OPTIONS]
Alias
docker network list

Descripción

Lista todas las redes de las cuales tiene conocimiento el demonio de Engine. Esto incluye las redes que se extienden a través de múltiples hosts en un clúster.

Opciones

OpciónPredeterminadoDescripción
-f, --filterProporciona valores de filtro (p. ej., driver=bridge)
--formatFormatea la salida utilizando una plantilla personalizada:
'table': Imprime la salida en formato de tabla con encabezados de columna (por defecto)
'table TEMPLATE': Imprime la salida en formato de tabla utilizando la plantilla Go provista
'json': Imprime en formato JSON
'TEMPLATE': Imprime la salida utilizando la plantilla Go provista.
Consulta https://docs-docker.esdocu.com/go/formatting/ para obtener más información sobre cómo dar formato a la salida con plantillas
--no-truncNo trunca la salida
-q, --quietSolo muestra los IDs de las redes

Ejemplos

Listar todas las redes

$ 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

Listar redes sin truncar la columna del ID (--no-trunc)

Usa la opción --no-trunc para mostrar el ID de red completo:

$ 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

Filtrar (--filter)

El formato de la opción de filtrado (-f o --filter) es un par clave=valor. Si hay más de un filtro, pasa múltiples opciones (p. ej., --filter "foo=bar" --filter "bif=baz"). Múltiples opciones de filtrado se combinan como un filtro OR. Por ejemplo, -f type=custom -f type=builtin devuelve tanto las redes custom como las builtin.

Los filtros actualmente soportados son:

  • driver
  • id (ID de la red)
  • label (label=<clave> o label=<clave>=<valor>)
  • name (nombre de la red)
  • scope (swarm|global|local)
  • type (custom|builtin)

Driver

El filtro driver busca coincidencias en las redes basándose en su controlador.

El siguiente ejemplo busca las redes que usan el controlador bridge:

$ docker network ls --filter driver=bridge
NETWORK ID          NAME                DRIVER            SCOPE
db9db329f835        test1               bridge            local
f6e212da9dfd        test2               bridge            local

ID

El filtro id busca coincidencias en todo o en parte del ID de una red.

El siguiente filtro coincide con todas las redes que tienen un ID que contiene la cadena 63d1ff1f77b0....

$ docker network ls --filter id=63d1ff1f77b07ca51070a8c227e962238358bd310bde1529cf62e6c307ade161
NETWORK ID          NAME                DRIVER           SCOPE
63d1ff1f77b0        dev                 bridge           local

También puedes filtrar por una subcadena en un ID, como se muestra a continuación:

$ 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

Etiqueta (Label)

El filtro label busca coincidencias en las redes basándose únicamente en la presencia de una etiqueta (label) o en una etiqueta y un valor.

El siguiente filtro coincide con las redes que tienen la etiqueta usage independientemente de su valor.

$ docker network ls -f "label=usage"
NETWORK ID          NAME                DRIVER         SCOPE
db9db329f835        test1               bridge         local
f6e212da9dfd        test2               bridge         local

El siguiente filtro coincide con las redes que tienen la etiqueta usage con el valor prod.

$ docker network ls -f "label=usage=prod"
NETWORK ID          NAME                DRIVER        SCOPE
f6e212da9dfd        test2               bridge        local

Nombre (Name)

El filtro name busca coincidencias en todo o en parte del nombre de una red.

El siguiente filtro coincide con todas las redes con un nombre que contiene la cadena foobar.

$ docker network ls --filter name=foobar
NETWORK ID          NAME                DRIVER       SCOPE
06e7eef0a170        foobar              bridge       local

También puedes filtrar por una subcadena en un nombre, como se muestra a continuación:

$ docker network ls --filter name=foo
NETWORK ID          NAME                DRIVER       SCOPE
95e74588f40d        foo                 bridge       local
06e7eef0a170        foobar              bridge       local

Alcance (Scope)

El filtro scope busca coincidencias en las redes basándose en su alcance.

El siguiente ejemplo busca las redes con el alcance swarm:

$ docker network ls --filter scope=swarm
NETWORK ID          NAME                DRIVER              SCOPE
xbtm0v4f1lfh        ingress             overlay             swarm
ic6r88twuu92        swarmnet            overlay             swarm

El siguiente ejemplo busca las redes con el alcance 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

Tipo (Type)

El filtro type admite dos valores: builtin muestra las redes predefinidas (bridge, none, host), mientras que custom muestra las redes definidas por el usuario.

El siguiente filtro coincide con todas las redes definidas por el usuario:

$ docker network ls --filter type=custom
NETWORK ID          NAME                DRIVER       SCOPE
95e74588f40d        foo                 bridge       local
63d1ff1f77b0        dev                 bridge       local

El uso de esta opción permite realizar una limpieza por lotes. Por ejemplo, usa este filtro para eliminar todas las redes definidas por el usuario:

$ docker network rm `docker network ls --filter type=custom -q`

Se emitirá una advertencia al intentar eliminar una red que tenga contenedores conectados.

Formatear la salida (--format)

Las opciones de formato (--format) permiten imprimir la salida de las redes de forma atractiva utilizando una plantilla Go.

A continuación se enumeran los marcadores de posición válidos para la plantilla Go:

Marcador de posiciónDescripción
.IDID de la red
.NameNombre de la red
.DriverControlador (driver) de la red
.ScopeAlcance (scope) de la red (local, global)
.IPv6Indica si IPv6 está habilitado en la red o no.
.InternalIndica si la red es interna o no.
.LabelsTodas las etiquetas asignadas a la red.
.LabelValor de una etiqueta específica para esta red. Por ejemplo {{.Label "project.version"}}
.CreatedAtHora en que se creó la red

Al usar la opción --format, el comando network ls devolverá los datos exactamente como lo declara la plantilla o, cuando se utiliza la directiva table, también incluirá los encabezados de las columnas.

El siguiente ejemplo utiliza una plantilla sin encabezados y muestra las entradas ID y Driver separadas por dos puntos (:) para todas las redes:

$ docker network ls --format "{{.ID}}: {{.Driver}}"
afaaab448eb2: bridge
d1584f8dc718: host
391df270dc66: null

Para listar todas las redes en formato JSON, usa la directiva json:

$ docker network ls --format json
{"CreatedAt":"2021-03-09 21:41:29.798999529 +0000 UTC","Driver":"bridge","ID":"f33ba176dd8e","IPv6":"false","Internal":"false","Labels":"","Name":"bridge","Scope":"local"}
{"CreatedAt":"2021-03-09 21:41:29.772806592 +0000 UTC","Driver":"host","ID":"caf47bb3ac70","IPv6":"false","Internal":"false","Labels":"","Name":"host","Scope":"local"}
{"CreatedAt":"2021-03-09 21:41:29.752212603 +0000 UTC","Driver":"null","ID":"9d096c122066","IPv6":"false","Internal":"false","Labels":"","Name":"none","Scope":"local"}