5.3. 使用 Skopeo 创建软件仓库


在某些情况下,podman CLI 工具无法拉取某些工件类型,如 application/x-mlmodel。尝试将 podman pull 与这个工件类型搭配使用会导致以下错误:

Error: parsing image configuration: unsupported image-specific operation on artifact with type "application/x-mlmodel"

另外,您可以使用 skopeo copy 将工件从一个位置复制到 Red Hat Quay 存储库。

先决条件

  • 已安装 skopeo CLI。
  • 您已登录到源 registry (本例中为 \registry.redhat.io),并具有有效的身份验证文件(~/.docker/config.json)。另外,在使用 skopeo CLI 运行命令时,您可以使用 -- src-username 和--src-password 参数提供凭证。
  • 已登陆到 Red Hat Quay 存储库。

步骤

  • 在工件上使用 skopeo copy 命令将工件复制到 Red Hat Quay 存储库。例如:

    $ sudo skopeo copy --dest-tls-verify=false --all \ 1 2
      --src-username <source_username> --src-password <source_password> \ 3
      --src-authfile ~/.docker/config.json \ 4
      --dest-username <username> --dest-password <password> \ 5
      docker://registry.redhat.io/rhelai1/granite-8b-code-instruct:1.4-1739210683 \ 6
      docker://quay-server.example.com/<namespace>/granite-8b-code-instruct:latest 7
    1
    可选。--dest-tls-verify=false 为目标 registry 禁用 SSL/TLS 验证。
    2
    可选。--all 标志可以选择复制所有镜像清单,包括多架构镜像。
    3
    可选。如果没有登录到 registry,您可以使用这些参数传递源 registry 凭证。
    4
    可选。Docker 身份验证文件的路径。通常位于 ~/.docker/config.json
    5
    您的 Red Hat Quay registry 用户名和密码。
    6
    来自红帽容器 registry 的源镜像或工件。确保您已登录到 registry,并可拉取镜像。
    7
    附加命名空间和镜像名称的 Red Hat Quay 存储库的 URL。

    输出示例

    Getting image source signatures
    Checking if image destination supports signatures
    Copying blob 9538fa2b8ad9 done   |
    Copying blob 491ae95f59a2 done   |
    Copying blob 01196d075d77 done   |
    Copying blob e53a4633c992 done   |
    Copying blob c266e9cfa731 done   |
    Copying blob dae0e701d9b2 done   |
    Copying blob 1e227a2c78d8 done   |
    Copying blob 94ff9338861b done   |
    Copying blob 2f2bba45146f done   |
    Copying blob d3b4df07a0ce done   |
    Copying blob f533a8dbb852 done   |
    Copying config 44136fa355 done   |
    Writing manifest to image destination
    Storing signatures

后续步骤

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.