docker network ls
描述
列出 Docker 引擎已知的所有网络。
该命令会显示本地主机上的所有网络,以及在 Swarm 集群中跨主机的网络(如 overlay 网络)。
用法
docker network ls [OPTIONS]别名
docker network list是docker network ls的等效别名。
选项
| 选项 | 默认值 | 描述 | | ---- | | | | -f, --filter | 无 | 根据条件过滤输出结果(例如 driver=bridge、scope=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 local2. 显示完整网络 ID(不截断)
3. 仅显示网络 ID(用于脚本)
过滤(--filter)
--filter)过滤格式为 key=value。支持多个过滤器(多个 -f),逻辑为 OR(满足任一条件即显示)。
支持的过滤字段:
driver
网络驱动(如 bridge、overlay)
id
网络 ID(支持完整 ID 或前缀匹配)
label
标签(label=key 或 label=key=value)
name
网络名称(支持子字符串匹配)
scope
作用域(local、global、swarm)
type
类型:builtin(内置网络)或 custom(用户创建的网络)
示例:
只显示使用 bridge 驱动的网络
bridge 驱动的网络显示名称包含 dev 的网络
dev 的网络显示用户自定义的网络(非内置)
批量删除所有自定义网络(谨慎使用!)
⚠️ 如果网络仍有容器连接,Docker 会拒绝删除并发出警告。
按标签过滤
自定义输出格式(--format)
--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 .}}'。
最后更新于
这有帮助吗?