docker network ls

描述

列出 Docker 引擎已知的所有网络。

该命令会显示本地主机上的所有网络,以及在 Swarm 集群中跨主机的网络(如 overlay 网络)。

用法

docker network ls [OPTIONS]

别名

  • docker network listdocker network ls 的等效别名。

选项

| 选项 | 默认值 | 描述 | | ---- | | | | -f, --filter | 无 | 根据条件过滤输出结果(例如 driver=bridgescope=swarm 等) | | --format | 无 | 使用自定义 Go 模板格式化输出: • 'table':以表格形式输出(默认) • 'json':输出为 JSON 格式 • 'TEMPLATE':使用自定义 Go 模板 详见 Docker 输出格式化指南 | | --no-trunc | false | 不截断输出(显示完整的网络 ID) | | -q, --quiet | false | 仅显示网络 ID(适用于脚本批量处理) |

示例

1. 列出所有网络(默认)

$ docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
7fca4eb8c647   bridge    bridge    local
9f904ee27bf5   none      null      local
cf03ee007fb4   host      host      local
78b03ee04fc4   mynet     bridge    local

2. 显示完整网络 ID(不截断)

3. 仅显示网络 ID(用于脚本)

过滤(--filter

过滤格式为 key=value。支持多个过滤器(多个 -f),逻辑为 OR(满足任一条件即显示)。

支持的过滤字段:

过滤键
说明

driver

网络驱动(如 bridgeoverlay

id

网络 ID(支持完整 ID 或前缀匹配)

label

标签(label=keylabel=key=value

name

网络名称(支持子字符串匹配)

scope

作用域(localglobalswarm

type

类型:builtin(内置网络)或 custom(用户创建的网络)

示例:

只显示使用 bridge 驱动的网络

显示名称包含 dev 的网络

显示用户自定义的网络(非内置)

批量删除所有自定义网络(谨慎使用!)

⚠️ 如果网络仍有容器连接,Docker 会拒绝删除并发出警告。

按标签过滤

自定义输出格式(--format

使用 Go 模板语法控制输出内容。常用占位符:

占位符
说明

.ID

网络 ID

.Name

网络名称

.Driver

驱动类型

.Scope

作用域

.IPv6

是否启用 IPv6(true/false

.Internal

是否为内部网络

.Labels

所有标签(字符串)

.Label "key"

特定标签的值(如 {{.Label "version"}}

.CreatedAt

创建时间

示例:

自定义列输出(ID 和驱动,用冒号分隔)

表格形式(带标题)

输出为 JSON(便于程序解析)

💡 提示:--format json 是 Docker CLI 内置的快捷方式,等价于 --format '{{json .}}'

最后更新于

这有帮助吗?