如何使用 docker config inspect 命令查看配置详情

DockerDockerBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在本实验中,你将学习如何使用 docker config inspect 命令查看 Docker 配置(config)的详细信息。我们将从通过文件创建 Docker 配置开始,这是管理 Docker 集群(swarm)中非敏感配置数据的基础步骤。

创建完成后,你将探索如何通过配置名称和唯一 ID 两种方式来查看已创建的配置,展示访问配置细节的不同方法。最后,你将学习如何使用 --format 标志格式化 docker config inspect 命令的输出,从而自定义显示的信息。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/inspect("Inspect Container") docker/ContainerOperationsGroup -.-> docker/create("Create Container") subgraph Lab Skills docker/ls -.-> lab-555100{{"如何使用 docker config inspect 命令查看配置详情"}} docker/inspect -.-> lab-555100{{"如何使用 docker config inspect 命令查看配置详情"}} docker/create -.-> lab-555100{{"如何使用 docker config inspect 命令查看配置详情"}} end

创建 Docker 配置

在这一步骤中,你将学习如何创建 Docker 配置(config)。Docker 配置用于存储非敏感信息(例如配置文件),这些信息可以被集群(swarm)中的服务访问。

首先,让我们创建一个简单的配置文件。我们将在 ~/project 目录下创建一个名为 my_config.txt 的文件,并写入示例内容。

echo "This is my sample configuration." > ~/project/my_config.txt

现在,我们可以使用 docker config create 命令基于这个文件创建 Docker 配置。基本语法是 docker config create <配置名称> <文件路径>

docker config create my_config ~/project/my_config.txt

你应该会在控制台看到新创建配置的 ID,这表示配置已成功创建。

为了验证配置是否创建成功,你可以使用 docker config ls 命令列出所有 Docker 配置。

docker config ls

在输出中,你应该能看到 my_config 及其 ID 和创建时间。

通过名称查看配置详情

在这一步骤中,你将学习如何使用名称来查看 Docker 配置的详细信息。docker config inspect 命令可以让你查看特定配置的详细数据。

要查看我们在上一步创建的 my_config 配置,请使用 docker config inspect 命令后接配置名称:

docker config inspect my_config

该命令会输出一个 JSON 对象,其中包含关于 my_config 配置的各种详细信息,例如其 ID、创建时间以及配置数据的内容。

输出结果提供了配置属性的完整视图。你可以看到 IDCreatedAtUpdatedAtSpecVersion 等字段。其中 Spec 字段包含实际的配置数据,这些数据是以 base64 编码形式存储的。

通过 ID 查看配置详情

在这一步骤中,你将学习如何使用 ID 来查看 Docker 配置的详细信息。虽然通过名称查看很方便,但在某些场景下使用 ID 查看也同样有用。

首先,让我们获取之前创建的 my_config 的 ID。你可以通过 docker config ls 命令的输出获取这个 ID。

docker config ls

在输出结果中找到 my_config 条目对应的 ID 列,复制这个 ID。

现在,使用 docker config inspect 命令后接你刚复制的配置 ID。将 <config_id> 替换为实际的 ID。

docker config inspect <config_id>

例如,如果 ID 是 abc123def456,那么命令应该是:

docker config inspect abc123def456

该命令会产生与通过名称查看时相同的详细 JSON 输出,包含配置属性的相关信息。

通过 ID 查看配置特别适用于以下场景:当你有多个名称相似的配置时,或者当你使用依赖配置 ID 的脚本时。

使用 --format 格式化输出

在这一步骤中,你将学习如何使用 --format 标志来格式化 docker config inspect 命令的输出。当你需要从 JSON 输出中提取特定信息并以更易读的格式展示时,这个功能非常有用。

--format 标志基于 Go 的 text/template 包实现。你可以指定想要显示的字段及其格式化方式。

让我们尝试仅显示 my_config 的 ID 和创建时间。可以使用以下格式字符串:{{.ID}} {{.CreatedAt}}

docker config inspect --format '{{.ID}} {{.CreatedAt}}' my_config

该命令会输出 my_config 的 ID 和创建时间,两者之间用空格分隔。

你还可以访问 JSON 输出中的嵌套字段。例如,要访问配置名称(位于 Spec.Name 下),可以使用 {{.Spec.Name}}

让我们显示配置的名称和 base64 编码的数据:

docker config inspect --format 'Name: {{.Spec.Name}}, Data: {{.Spec.Data}}' my_config

该命令会以更结构化的格式输出配置名称及其 base64 编码数据。

--format 标志是一个强大的工具,可用于自定义 Docker 命令的输出格式,并提取你所需的信息。

总结

在本实验中,你学习了如何使用 docker config create 命令从文件创建 Docker 配置,并通过 docker config ls 验证其创建。随后,你探索了如何使用 docker config inspect 命令查看 Docker 配置的详细信息,演示了如何通过配置名称进行查看。