Docker 密钥 ls

描述列出密钥
用法docker secret ls [OPTIONS]
别名
docker secret list

此命令适用于 Swarm 编排器。

描述

在管理器节点上运行此命令以列出 swarm 中的 secret。

有关使用 Secret 的详细信息,请参阅使用 Docker Secret 管理敏感数据

注意

这是一个集群管理命令,必须在 swarm 上执行 Manager 节点。要了解 Manager 和 worker,请参阅 文档。

选项

选择违约描述
-f, --filter根据提供的条件筛选输出
--format使用自定义模板格式化输出:
'table':以带有列标题的表格格式打印输出(默认)
'table TEMPLATE':使用给定的 Go 模板
以表格格式打印输出'json':以 JSON 格式
打印'TEMPLATE':使用给定的 Go 模板打印输出。
有关使用模板设置输出格式的更多信息,请参阅 https://docs.docker.com/go/formatting/
-q, --quiet仅显示 ID

例子

$ docker secret ls

ID                          NAME                        CREATED             UPDATED
6697bflskwj1998km1gnnjr38   q5s5570vtvnimefos1fyeo2u2   6 weeks ago         6 weeks ago
9u9hk4br2ej0wgngkga6rp4hq   my_secret                   5 weeks ago         5 weeks ago
mem02h8n73mybpgqjf0kfi1n0   test_secret                 3 seconds ago       3 seconds ago

筛选 (--filter)

筛选标志 (-f--filter) 格式为key=value双。如果还有更多 than 一个 filter,然后传递多个标志(例如--filter "foo=bar" --filter "bif=baz").

当前支持的筛选器包括:

  • id(密钥的 ID)
  • 标签 (label=<key>label=<key>=<value>)
  • name (密钥的名称)

身份证

idfilter 匹配密钥 ID 的 all 或 prefix。

$ docker secret ls -f "id=6697bflskwj1998km1gnnjr38"

ID                          NAME                        CREATED             UPDATED
6697bflskwj1998km1gnnjr38   q5s5570vtvnimefos1fyeo2u2   6 weeks ago         6 weeks ago

标签

labelfilter 根据是否存在label单独或 一个label和一个值。

以下筛选条件将具有project标签无关 它的值:

$ docker secret ls --filter label=project

ID                          NAME                        CREATED             UPDATED
mem02h8n73mybpgqjf0kfi1n0   test_secret                 About an hour ago   About an hour ago

以下筛选条件仅匹配projectlabel 替换为project-a价值。

$ docker service ls --filter label=project=test

ID                          NAME                        CREATED             UPDATED
mem02h8n73mybpgqjf0kfi1n0   test_secret                 About an hour ago   About an hour ago

名字

name筛选密钥名称的 all 或 prefix 匹配项。

以下筛选条件将名称包含前缀test.

$ docker secret ls --filter name=test_secret

ID                          NAME                        CREATED             UPDATED
mem02h8n73mybpgqjf0kfi1n0   test_secret                 About an hour ago   About an hour ago

设置输出格式 (--format)

格式化选项 (--format) pretty 打印 secrets 输出 使用 Go 模板。

下面列出了 Go 模板的有效占位符:

占 位 符描述
.ID密钥 ID
.Name密钥名称
.CreatedAt创建 secret 的时间
.UpdatedAt密钥的更新时间
.Labels分配给密钥的所有标签
.Label此密钥的特定标签的值。例如{{.Label "secret.ssh.key"}}

使用--format选项、secret ls命令将 完全按照模板声明的方式输出数据,或者在使用table指令中,也将包含列标题。

以下示例使用不带标头的模板,并输出IDName条目之间用冒号 (:) 的所有镜像:

$ docker secret ls --format "{{.ID}}: {{.Name}}"

77af4d6b9913: secret-1
b6fa739cedf5: secret-2
78a85c484f71: secret-3

要以表格格式列出所有密钥及其名称和创建日期,请执行以下作 可以使用:

$ docker secret ls --format "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}"

ID                  NAME                      CREATED
77af4d6b9913        secret-1                  5 minutes ago
b6fa739cedf5        secret-2                  3 hours ago
78a85c484f71        secret-3                  10 days ago

要以 JSON 格式列出所有密钥,请使用json命令:

$ docker secret ls --format json
{"CreatedAt":"28 seconds ago","Driver":"","ID":"4y7hvwrt1u8e9uxh5ygqj7mzc","Labels":"","Name":"mysecret","UpdatedAt":"28 seconds ago"}