名称

podman-secret-create - 创建一个新的密钥

概要

podman secret create [选项] 名称 文件|-

描述

使用标准输入或文件中的秘密内容创建密钥。

Create 接受文件路径或 -,它告诉 podman 从 stdin 读取密钥

密钥是一块敏感数据,容器在运行时需要,但没有存储在镜像或源代码管理中,例如用户名和密码、TLS 证书和密钥、SSH 密钥或其他重要的通用字符串或二进制内容(最大 500 kb)。

密钥不会通过 podman commit 提交到镜像,也不会在由 podman export 命令创建的存档中提交。

密钥还可以用于存储 podman login 用于验证容器注册表的密码。

选项

--driver, -d=driver

指定密钥驱动程序(默认值 file)。

--driver-opts=key1=val1,key2=val2

指定驱动程序特定选项。

--env=false

从环境变量读取密钥数据。

--help

打印使用说明。

--label, -l=key=val1,key2=val2

向密钥添加标签。这些标签可以在 podman secrete inspect 或 ls 中查看。

--replace=false

如果具有相同名称的现有密钥已经存在,则更新密钥。--replace 选项不会更改现有容器中的密钥,而只更改新创建的容器。默认值为 false

密钥驱动程序

file

密钥驻留在一个受读保护的文件中。

pass

密钥驻留在一个 GPG 加密的文件中。

shell

密钥由自定义脚本管理。一个环境变量 SECRET_ID 被传递给脚本(除了 list),密钥通过 stdin/stdout 传递(如果适用)。驱动程序选项 listlookupstoredelete 用于安装脚本

[secrets]
driver = "shell"

[secrets.opts]
list =
lookup =
store =
delete =

示例

根据本地文件创建指定的密钥。

echo -n mysecret > ./secret.txt
$ podman secret create my_secret ./secret.txt

通过 stdin 创建指定的密钥。

$ printf <secret> | podman secret create my_secret -

使用 pass 驱动程序根据本地文件创建 GPG 加密的密钥。

$ podman secret create --driver=pass my_secret ./secret.txt.gpg

从名为 ‘MYSECRET’ 的环境变量创建密钥。

$ podman secret create --env=true my_secret MYSECRET

另请参阅

podman(1), podman-secret(1), podman-login(1)

历史

2021 年 1 月,最初由 Ashley Cui acui@redhat.com 编译 2024 年 2 月,由 Brett Calliss brett@obligatory.email 添加了显示从环境变量创建密钥的示例