搜索

5.3. 创建软件仓库

download PDF

存储库提供用于存储一组相关容器镜像的中央位置。这些镜像可用于以标准化的格式构建应用程序及其依赖项。

仓库按命名空间组织。每个命名空间可以有多个软件仓库。例如,您可能有一个个人项目的命名空间、一个用于公司的命名空间,或针对您所在机构的特定团队有一个命名空间。

通过付费计划,Quay.io 为用户提供其存储库的访问控制。用户可以公开存储库,这意味着任何人都可以拉取或下载,或者用户可从中拉取或下载镜像,或者用户可以对其进行私有,并限制对授权用户或团队的访问。

注意

Quay.io 的空闲层不允许使用私有存储库。您必须升级到 Quay.io 的付费层来创建私有存储库。如需更多信息,请参阅"与 Quay.io 定价相关的信息"。

在 Quay.io 中创建存储库的方法有两种:使用相关 dockerpodman 命令推送镜像,或者使用 Quay.io UI。

如果您在不先在 UI 上创建存储库的情况下通过命令行界面(CLI)推送镜像,则创建的存储库将设置为 Private,无论您拥有的计划是什么。

注意

建议您在推送镜像前在 Quay.io UI 上创建存储库。Quay.io 检查计划状态,如果计划未激活,则不允许创建私有存储库。

5.3.1. 使用 UI 创建镜像存储库

使用以下步骤使用 Quay.io UI 创建存储库。

流程

  1. 通过 Web UI 登录您的用户帐户。
  2. 在 Quay.io 登录页面上,单击 Create New Repository。或者,您可以点 + 图标 New Repository。例如:

    Create a new repository for a user.

  3. Create New Repository 页面中:

    1. Repository Name 附加到您的用户名或您要使用的机构中。

      重要

      不要在您的仓库名称中使用以下词语:* build * trigger * tag

      当这些词语用于存储库名称时,用户无法访问存储库,且无法永久删除存储库。尝试删除这些软件仓库会返回以下错误: Failed to delete repository <repository_name>, HTTP404 - Not Found。

    2. 可选。单击 Click to set repository description,以添加存储库的描述。
    3. 根据您的需要,点 PublicPrivate
    4. 可选。选择所需的存储库初始化。
  4. 单击 Create Private Repository 以创建新的空存储库。

5.3.2. 使用 CLI 创建镜像存储库

使用正确的凭证时,您可以使用 Quay.io 实例中尚不存在的 Docker 或 Podman 将镜像推送到 存储库。推送镜像指的是将容器镜像从本地系统或开发环境上传到容器 registry (如 Quay.io)的过程。将镜像推送到 Quay.io 后,会创建一个存储库。

如果您在不先在 UI 上创建存储库的情况下通过命令行界面(CLI)推送镜像,则创建的存储库将设置为 Private,无论您拥有的计划是什么。

注意

建议您在推送镜像前在 Quay.io UI 上创建存储库。Quay.io 检查计划状态,如果计划未激活,则不允许创建私有存储库。

通过推送镜像来创建镜像存储库。

先决条件

  • 您已下载并安装 podman CLI。
  • 您已登录到 Quay.io。
  • 您已拉取了一个镜像,如 busybox。

流程

  1. 从示例 registry 中拉取示例页面。例如:

    $ podman pull busybox

    输出示例

    Trying to pull docker.io/library/busybox...
    Getting image source signatures
    Copying blob 4c892f00285e done
    Copying config 22667f5368 done
    Writing manifest to image destination
    Storing signatures
    22667f53682a2920948d19c7133ab1c9c3f745805c14125859d20cede07f11f9

  2. 使用新存储库和镜像名称标记本地系统上的镜像。例如:

    $ podman tag docker.io/library/busybox quay.io/quayadmin/busybox:test
  3. 将镜像推送到 registry。执行此步骤,您可以使用浏览器在存储库中查看标记的镜像。

    $ podman push --tls-verify=false quay.io/quayadmin/busybox:test

    输出示例

    Getting image source signatures
    Copying blob 6b245f040973 done
    Copying config 22667f5368 done
    Writing manifest to image destination
    Storing signatures

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.