商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 系统应用 > 如何使用 docker buildx ls 命令列出构建器实例

如何使用 docker buildx ls 命令列出构建器实例

  发布于2026-08-19 阅读(0)

扫一扫,手机访问

介绍

在本实验中,你将学习如何使用 CODE_0 命令列出构建器实例及其关联节点。你将探索该命令的基本用法,查看可用的构建环境及其配置。

此外,你还将了解如何通过 Go 模板格式化 CODE_0 的输出,从而自定义显示信息。这包括格式化输出以展示特定字段,以及可视化构建器实例与其节点之间的关系。

列出所有构建器实例和节点

在本步骤中,你将学习如何使用 CODE_0 命令列出所有构建器实例及其节点。该命令有助于了解可用的构建环境及其配置。

首先,我们执行基础命令来列出构建器实例和节点:

docker buildx ls

你将看到类似以下的输出:

NAME/NODE       DRIVER/ENDPOINT STATUS  BUILDKIT             PLATFORMS
default         docker
  default       docker          running linux/amd64, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x

输出结果展示了构建器实例及其关联节点的信息。各列含义如下:

  • CODE_0 列显示构建器实例名称及其包含的节点名称
  • CODE_0 列表示节点使用的驱动类型和端点
  • CODE0 列显示节点当前状态(如 CODE1
  • CODE_0 列展示 BuildKit 版本信息
  • CODE_0 列列出节点支持的平台架构

在此示例中,我们可以看到名为 CODE0 的构建器实例包含一个同名节点。该节点使用 CODE1 驱动,当前状态为 CODE_2,并支持多种平台架构。

使用 Go 模板格式化输出

在本步骤中,你将学习如何使用 Go 模板来格式化 CODE_0 命令的输出。Go 模板提供了一种灵活的方式来定制输出格式,仅显示你需要的信息。

通过 CODE0 标志,你可以指定一个 Go 模板。该模板使用诸如 CODE1CODE2CODE3 等占位符来访问构建器实例和节点对象的不同字段。

让我们尝试格式化输出,仅显示构建器实例和节点的名称及驱动类型:

docker buildx ls --format "{{.Name}}t{{.Driver}}"

你将看到类似以下的输出:

default docker
default docker

在这个模板中:

  • CODE_0 表示构建器或节点的名称
  • CODE_0 表示驱动类型
  • CODE_0 用于在名称和驱动类型之间插入制表符,提高可读性

这个示例展示了如何使用简单的 Go 模板从 CODE_0 输出中提取特定信息。在后续步骤中,我们将探索更复杂的模板来实现不同的输出格式。

使用特定字段格式化输出

在本步骤中,我们将继续探索如何使用 Go 模板来格式化 CODE_0 的输出,并显示你感兴趣的特定字段。你可以从构建器实例和节点对象中选择各种字段,将其包含在自定义输出中。

让我们格式化输出,显示每个构建器节点的名称、状态和支持的平台:

docker buildx ls --format "{{.Name}}t{{.Status}}t{{.Platforms}}"

你将看到类似以下的输出:

default running linux/amd64, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x
default running linux/amd64, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x

在这个模板中:

  • CODE_0 表示构建器节点的名称
  • CODE0 表示构建器节点的状态(如 CODE1
  • CODE_0 表示构建器节点支持的平台列表

我们再次使用 CODE_0 通过制表符分隔字段,这能让你快速查看每个节点的状态和支持的平台。

你可以根据需求在模板中组合不同的字段。尝试包含其他字段如 CODE0CODE1,观察输出结果的变化。

格式化输出以显示构建器与节点关系

在本步骤中,我们将使用更高级的 Go 模板来可视化构建器实例与其节点之间的关系。当你配置了多个构建器实例和节点时,这会特别有用。

我们可以在 Go 模板中使用条件语句和循环来实现这一目的。不过为了简单起见,并专注于基本格式化,我们将创建一个能清晰显示节点所属构建器实例的模板。

让我们使用一个模板,先打印构建器名称,然后缩进显示其节点:

docker buildx ls --format "{{range .}}{{if .Builder}}{{.Name}} (Builder){{range .Nodes}}n  - {{.Name}} (Node){{end}}{{else}}n{{.Name}} (Node){{end}}{{end}}"

你将看到类似以下的输出:

default (Builder)
  - default (Node)

让我们解析这个模板:

  • CODE_0:遍历构建器实例和节点列表
  • CODE0:检查当前项是否为构建器实例(CODE1 为 true)
  • 如果是构建器:
  • CODE_0:打印构建器名称并标注"(Builder)"
  • CODE_0:遍历当前构建器中的节点
  • CODE_0:打印换行符、缩进、"- "、节点名称和"(Node)"
  • 如果不是构建器(在基本配置中较少见,表示独立节点):
  • CODE_0:打印换行符、节点名称和"(Node)"

这个模板提供的结构化输出,能够清晰呈现出哪些节点归属于哪些构建器实例。虽说在这个例子里,仅有一个构建器和一个节点,看起来较为简单,然而,当您的buildx配置变得更为复杂时,这个模板就会展现出极高的实用性。

总结

在本次实验里,你学会了运用CODE_0命令来罗列构建器实例以及与之相关联的节点。一开始,你执行了基础命令以查看默认输出,其中涵盖了构建器名称、节点名称、驱动类型、状态、BuildKit版本以及支持平台等诸多详细信息。

此外,你还探索了如何通过 CODE_0 标志使用 Go 模板来格式化输出。这让你能够通过为不同字段指定占位符来自定义显示信息,从而仅提取并展示与构建器实例和节点相关的关键数据。

本文转载于:https://labex.io/zh/tutorials/docker-how-to-use-docker-buildx-ls-command-to-list-builder-instances-555060 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注