18.3. 使用 authfile 在容器中运行 Skopeo
您可以使用身份验证文件(authfile)来指定凭证。skopeo login
命令登录到特定的注册中心,并将身份验证令牌存储在 authfile 中。使用 authfile 的优点是,无需重复输入凭证。
当在同一主机上运行时,所有容器工具,如 Skopeo、Buildah 和 Podman 共享相同的 authfile。在容器中运行 Skopeo 时,您必须通过在容器中卷挂载 authfile 来共享主机上的 authfile,或者您必须在容器内重新验证。
先决条件
-
container-tools
元数据包已安装。
流程
使用 Skopeo 根据锁定的注册中心检查远程容器镜像:
$ podman run --rm -v $AUTHFILE:/auth.json registry.redhat.io/rhel9/skopeo inspect docker://$IMAGE
-v $AUTHFILE:/auth.json
选项会将 authfile 卷挂载在容器中的 /auth.json 处。Skopeo 现在可以访问主机上的 authfile 中的身份验证令牌,并获得对注册中心的安全访问。
其他 Skopeo 命令也可以工作,例如:
-
使用
skopeo-copy
命令,通过--source-creds
和--dest-creds
选项在命令行中为源和目标镜像指定凭据。它还读取/auth.json
authfile。 -
如果要为源和目标镜像指定单独的 authfile,请使用
--source-authfile
和--dest-authfile
选项,并将这些 authfiles 从主机卷挂载到容器中。
其他资源