NAME

podman-secret-create - 创建新秘密

SYNOPSIS

podman secret create [options] name file|-

DESCRIPTION

使用标准输入或从机密内容的文件创建机密。

CREATE接受文件的路径,或者 - ,它告诉Podman从stdin中读取秘密

秘密是容器在运行时需要但未存储在图像或源代码控制中的一大块敏感数据,例如用户名和密码、SSL证书和密钥、SSL密钥或其他重要的通用字符串或二进制内容(大小最大512 kB)。

秘密并不致力于与 podman commit ,并且不会提交到由 podman export 命令

机密还可用于存储密码 podman login 根据容器注册表进行身份验证。

OPTIONS

--driver-d = driver

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

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

指定驱动程序特定选项。

--env = 错误

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

--help

打印用法报表。

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

将标签添加到机密。这些标签可以在Podman Secure Inspect或ls中查看。

--replace = false

如果已存在同名的现有密钥,请更新该密钥。这个 --replace 选项不会更改现有容器中的机密,只会更改新创建的容器。缺省值为 false

秘密司机

文件

机密驻留在读保护文件中。

经过

机密驻留在GPG加密的文件中。

密码由自定义脚本管理。一个环境变量 SECRET_ID 传递给脚本(除了 list ),并且通过标准输入/标准输出(在适用的情况下)传送秘密。驱动程序选项 listlookupstore ,以及 delete 用于安装脚本:

[secrets]
driver = "shell"

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

EXAMPLES

基于本地文件创建指定的秘密。

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

通过标准输入创建指定的密码。

$ printf <secret> | podman secret create my_secret -

创建或轮换加密安全的随机秘密,略低于最大值 512000 bytes通过stdin.

openssl rand -base64 378000 | podman secret create --replace my_secret -

将基于本地文件的秘密安全地装载到容器中。

podman run --rm --secret source=my_secret,type=mount,uid=1001,gid=1001,mode=440 docker.io/library/alpine ls -l /run/secrets/my_secret

使用通行驱动程序根据本地文件创建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) , podman-run(1)

HISTORY

  • 2021年1月,最初由Ashley Cuiacui@redhat.com汇编

  • 2024年2月,添加了显示从环境变量进行秘密创建的示例,作者:Brett Calliss brett@obligatory.email

  • 2025年5月,添加了显示安全秘密生成/轮换和安装的示例 [Stuart Cardall] (https://github.com/itshore)