名称

podman-artifact-push - 将 OCI 工件从本地存储推送到镜像仓库

简介

podman artifact push [选项] 镜像

描述

将工件从本地工件存储推送到镜像仓库。

# Push artifact to a container registry
$ podman artifact push quay.io/artifact/foobar1:latest

选项

--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) 连接到注册表。(默认值: /etc/containers/certs.d) 有关详细信息,请参阅 containers-certs.d(5)。(此选项不适用于远程 Podman 客户端,包括 Mac 和 Windows (WSL2 除外) 机器)

--creds=[username[:password]]

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

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

--digestfile=Digestfile

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

--quiet, -q

在写入输出镜像时,抑制进度输出

--retry=attempts

在仓库和本地存储之间拉取或推送镜像失败时重试的次数。默认为 3

--retry-delay=duration

在注册表和本地存储之间拉取或推送镜像失败时,重试尝试之间的延迟持续时间。默认是从两秒开始,然后进行指数退避。当设置此值时,会使用此延迟,并且不会发生指数退避。

--sign-by=key

使用指定的密钥在目标位置添加“简单签名”签名。(此选项不适用于远程 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

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

示例

将指定的镜像推送到容器注册表

$ podman artifact push quay.io/baude/artifact:single
Getting image source signatures
Copying blob 3ddc0a3cdb61 done   |
Copying config 44136fa355 done   |
Writing manifest to image destination

另请参阅

podman(1), podman-artifact(1), podman-pull(1), podman-login(1), containers-certs.d(5)

历史

2025 年 1 月,最初由 Brent Baude bbaude@redhat.com 编译