名称

podman-manifest-push - 将清单列表或镜像索引推送到 registry

简介

podman manifest push [选项] listnameorindexname [destination]

描述

将清单列表或镜像索引推送到 registry。

返回值

列表镜像的 ID 和镜像清单的摘要。

选项

--add-compression=compression

确保为每个平台添加了请求的压缩变体到清单列表,同时保持原始实例在同一清单列表中完好无损。支持的值有 (gzipzstdzstd:chunked)。此标志可多次使用。

请注意,--compression-format 控制清单列表中每个实例的压缩格式。--add-compression 将为列表中每个实例添加一个具有指定压缩的新变体。--compression-format gzip --add-compression zstd 将推送一个清单列表,其中每个实例都使用 gzip 压缩,并额外添加一个使用 zstd 压缩的每个实例的变体。

--all

除了列表或索引本身,还推送清单列表或镜像索引中提及的镜像。(默认为 true)

--authfile=path

认证文件的路径。在 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=path 完成。

--cert-dir=path

使用 path 中的证书 (*.crt, *.cert, *.key) 连接到 registry。(默认值:/etc/containers/certs.d) 有关详细信息,请参阅 containers-certs.d(5)。(此选项不适用于远程 Podman 客户端,包括 Mac 和 Windows (WSL2 除外) 机器)

--compression-format=gzip | zstd | zstd:chunked

指定要使用的压缩格式。支持的值有:gzipzstdzstd:chunked。默认值为 gzip,除非在 containers.conf 文件中被覆盖。zstd:chunked 与镜像加密不兼容,在这种情况下会以警告形式视为 zstd

--compression-level=level

指定要使用的压缩级别。该值特定于所使用的压缩算法,例如对于 zstd,接受的值范围为 1-20(含),默认值为 3;对于 gzip,接受的值范围为 1-9(含),默认值为 5。

--creds=[username[:password]]

用于向镜像仓库进行身份验证的 [username[:password]](如果需要)。如果未提供一个或两个值,则会出现命令行提示,可以输入该值。密码输入时无回显。

请注意,指定的凭据仅用于对目标 registry 进行身份验证。它们不用于镜像或 registry 被重写时(请参阅 containers-registries.conf(5));要对这些进行身份验证,请考虑使用 containers-auth.json(5) 文件。

--digestfile=Digestfile

复制镜像后,将生成镜像的摘要写入该文件。

--force-compression

如果设置,即使目标已包含不同压缩的变体,推送也会使用指定的压缩算法。如果命令行上明确指定了 --compression-format,则默认为 true,否则为 false

--format, -f=format

推送列表时要使用的清单列表类型(oci 或 v2s2)(默认为 oci)。

--quiet, -q

写入清单时,抑制进度输出

--remove-signatures

推送镜像时不复制签名。

--rm

如果推送成功,则从本地存储中删除清单列表或镜像索引。

--sign-by=fingerprint

使用指定密钥对推送的镜像进行“简单签名”签名。(此选项不适用于远程 Podman 客户端,包括 Mac 和 Windows (WSL2 除外) 机器)

--sign-by-sigstore=param-file

根据容器的 sigstore 签名参数文件 param-file 中指定的进一步选项添加一个 sigstore 签名。有关文件格式的详细信息,请参阅 containers-sigstore-signing-params.yaml(5)。

--sign-by-sigstore-private-key=path

使用指定路径的私钥对推送的镜像进行 sigstore 签名。(此选项不适用于远程 Podman 客户端,包括 Mac 和 Windows (WSL2 除外) 机器)

--sign-passphrase-file=path

如果对镜像进行签名(使用 --sign-by--sign-by-sigstore-private-key),则从指定路径读取要使用的密码短语。

--tls-verify

联系 registry 时要求 HTTPS 并验证证书(默认值:true)。如果明确设置为 true,则使用 TLS 验证。如果设置为 false,则不使用 TLS 验证。如果未指定,则使用 TLS 验证,除非目标 registry 在 containers-registries.conf(5) 中列为不安全 registry。

DESTINATION

DESTINATION 是容器镜像将被推送到的位置。它支持来自 containers-transports(5) 的所有传输方式。如果未指定传输方式,则使用 docker(即容器 registry)传输方式。对于远程客户端,包括 Mac 和 Windows (WSL2 除外) 机器,docker 是唯一支持的传输方式。

示例

将清单列表推送到容器 registry

podman manifest push mylist:v1.11 docker://registry.example.org/mylist:v1.11

另请参阅

podman(1)podman-manifest(1)containers-transports(5)