名称

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

另请参见

containers-certs.d(5), containers-registries.d(5)

历史

2018 年 11 月,最初由 Qi Wang(qiwan at redhat dot com)编译