名称¶
podman-image-sign - 为镜像创建签名
概要¶
podman image sign [选项] 镜像 [镜像 …]
描述¶
podman image sign 为从注册表拉取的一个或多个本地镜像创建本地签名。如果存在,签名将写入从注册表配置文件派生的目录 $HOME/.config/containers/registries.d
中,否则写入 /etc/containers/registries.d
(除非在编译时被覆盖),有关更多信息,请参见 containers-registries.d(5)。默认情况下,签名将写入 /var/lib/containers/sigstore
(对于 root 用户)或 $HOME/.local/share/containers/sigstore
(对于非 root 用户)
选项¶
--all, -a¶
为多架构镜像的所有清单签名(默认值为 false)。
--authfile=路径¶
身份验证文件的路径。在 Linux 上默认为 ${XDG_RUNTIME_DIR}/containers/auth.json
,在 Windows/macOS 上默认为 $HOME/.config/containers/auth.json
。该文件由 podman login 创建。如果在该位置找不到授权状态,则会检查 $HOME/.docker/config.json
,这是使用 docker login 设置的。
注意:还可以通过设置 REGISTRY_AUTH_FILE
环境变量来覆盖身份验证文件的默认路径。这可以通过 export REGISTRY_AUTH_FILE=路径 来完成。
--cert-dir=路径¶
使用 路径 (*.crt, *.cert, *.key) 中的证书连接到注册表。(默认值:/etc/containers/certs.d)有关详细信息,请参见 containers-certs.d(5)。(此选项在远程 Podman 客户端不可用,包括 Mac 和 Windows(不包括 WSL2)机器)
--directory, -d=目录¶
将签名存储在指定的目录中。默认值:/var/lib/containers/sigstore
--help, -h¶
打印使用说明。
--sign-by=身份¶
覆盖签名的默认身份。
示例¶
使用 [email protected] 的身份为 busybox 镜像签名,使用用户的密钥环,并将签名保存到 /tmp/signatures/ 中。
$ sudo podman image sign --sign-by [email protected] --directory /tmp/signatures docker://privateregistry.example.com/foobar
$ sudo podman image sign --authfile=/tmp/foobar.json --sign-by [email protected] --directory /tmp/signatures docker://privateregistry.example.com/foobar
另请参见¶
历史¶
2018 年 11 月,最初由 Qi Wang(qiwan at redhat dot com)编译