跳至主要内容

从 Docker 注册表迁移到容器注册表

GitHub 将把以前存储在 GitHub.com 上的 Docker 注册表中的 Docker 镜像迁移到容器注册表。

谁可以使用此功能?

GitHub Packages 可用于 GitHub 免费版、GitHub Pro、GitHub 免费组织版、GitHub Team、GitHub Enterprise Cloud 和 GitHub Enterprise Server 3.0 或更高版本。


GitHub Packages 不适用于使用传统按仓库计费计划的帐户拥有的私有仓库。此外,使用传统按仓库计费计划的帐户无法访问支持细粒度权限的注册表,因为这些帐户按仓库计费。有关支持细粒度权限的注册表列表,请参阅“关于 GitHub Packages 的权限”。有关更多信息,请参阅“GitHub 的计划”。

关于容器注册表

容器注册表在您的组织或个人帐户中存储容器镜像,并允许您将镜像与仓库关联。您可以选择继承仓库的权限,也可以独立于仓库设置细粒度权限。您还可以匿名访问公共容器镜像。有关更多信息,请参阅“使用容器注册表”。

关于从 Docker 注册表迁移

容器注册表取代了 GitHub 的 Docker 注册表。如果您在 Docker 注册表中存储了 Docker 镜像,GitHub 将逐步将这些镜像迁移到容器注册表。您无需执行任何操作。

Docker 镜像迁移到容器注册表后,您将看到包详细信息的以下更改。

  • 包图标将是容器注册表徽标(一个 图标),而不是 Docker 徽标。
  • 拉取 URL 中的域名将变为 ghcr.io,而不是 docker.pkg.github.com

任何使用 Docker 注册表命名空间 docker.pkg.github.com 的脚本或 GitHub Actions 工作流程,在迁移到 ghcr.io 的容器注册表后仍将继续工作。

迁移后,您将无法再使用 GraphQL API 查询 PackageType 为“DOCKER”的包。您可以使用 REST API 查询 package_type 为“container”的包。有关更多信息,请参阅“包的 REST API 端点”。

关于容器注册表的计费

有关容器注册表计费的更多信息,请参阅“关于 GitHub Packages 的计费”。