Skip to main content

此版本的 GitHub Enterprise Server 已于以下日期停止服务 2024-09-25. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持

将企业从 Docker 注册表迁移到容器注册表

可以将先前存储在 你的 GitHub Enterprise Server 实例 上的 Docker 注册表中的 Docker 映像迁移到 Container registry。

谁可以使用此功能?

Enterprise owners can migrate Docker images to the Container registry.

Note

GitHub Enterprise Server 的 Container registry 目前为beta 版本,可能会有改动。

必须启用 GitHub Packages 和子域隔离才能使用 Container registry。 有关详细信息,请参阅“使用容器注册表”。

关于 Container registry

Container registry 将容器映像存储在组织或个人帐户中,并允许你将映像与存储库相关联。 可以选择是从存储库继承权限,还是独立于存储库设置精细权限。 你也可以匿名访问公共容器映像。 有关详细信息,请参阅“使用容器注册表”。

有关配置 你的 GitHub Enterprise Server 实例 的 GitHub Packages 的详细信息,请参阅“企业 GitHub Packages 使用入门”。

关于从 Docker 注册表迁移

Container registry 替代 GitHub 的 Docker 注册表。 如果 你的 GitHub Enterprise Server 实例 上的 Docker 注册表包含映像,必须手动将映像迁移到 Container registry。

Note

GitHub Enterprise Server 3.6 支持迁移存储在组织中的 Docker 映像。 未来的版本将支持迁移用户拥有的映像。

任何使用 Docker 注册表 docker.HOSTNAME 的命名空间的脚本或 GitHub Actions 工作流在迁移到 containers.HOSTNAME 处的 Container registry 后都将继续工作。 有关迁移到 Container registry 的影响的详细信息,请参阅“从 Docker 注册表迁移到容器注册表”。

将组织迁移到 Container registry

可以开始将组织的所有 Docker 映像迁移到 Container registry。 迁移操作的持续时间取决于要迁移的映像总数以及实例上的总体负载。 成功迁移后,GitHub Enterprise Server 将显示摘要,以后所有 Docker 映像的上传都将使用 Container registry。

如果站点管理员为 你的 GitHub Enterprise Server 实例 配置了电子邮件通知,你将在迁移完成后收到一封电子邮件。 有关详细信息,请参阅“配置电子邮件通知”。

迁移期间

在迁移过程中,实例的 CPU 和内存使用率将会增加。 为确保用户的实例性能,GitHub 建议在活动减少期间开始迁移。

Warning

请勿修改企业的设置或从管理 SSH 会话运行 ghe-config-apply。 这些操作将触发配置运行,这可以重新启动服务并且可能会中断迁移。

迁移后

迁移后,由于 Docker 注册表和 Container registry 中的映像文件重复,因此实例的存储压力将会增加。 GitHub Enterprise Server 的未来版本将在所有迁移完成后删除重复的文件。

有关监视 你的 GitHub Enterprise Server 实例 的性能和存储的详细信息,请参阅“关于监视器仪表板”。

开始迁移

  1. 在 GitHub Enterprise Server 的右上角,单击你的个人资料照片,然后单击“企业设置”****。

    单击 GitHub Enterprise Server 上的个人资料照片时显示的下拉菜单的屏幕截图。 “企业设置”选项以深橙色边框突出显示。

  2. 在页面左侧的企业帐户边栏中,单击 设置”。

  3. 在左侧边栏中,单击“包”。

  4. 在要迁移的包数量的右侧,单击“开始迁移”。 在迁移过程中,GitHub Enterprise Server 将在此页上显示进度。

迁移完成后,该页将显示结果。 如果迁移失败,该页将显示拥有导致失败的包的组织。

重新运行失败的组织迁移

在迁移之前,如果用户在 Container registry 中创建了与 Docker 注册表中的现有包同名的包,则迁移将失败。

  1. 删除 Container registry 中受影响的容器。 有关详细信息,请参阅“删除和恢复包”。

  2. 在 GitHub Enterprise Server 的右上角,单击你的个人资料照片,然后单击“企业设置”****。

    单击 GitHub Enterprise Server 上的个人资料照片时显示的下拉菜单的屏幕截图。 “企业设置”选项以深橙色边框突出显示。

  3. 在页面左侧的企业帐户边栏中,单击 设置”。

  4. 在左侧边栏中,单击“包”。

  5. 在要迁移的包数量的右侧,单击“重新开始迁移”。 在迁移过程中,GitHub Enterprise Server 将在此页上显示进度。

  6. 如果迁移再次失败,请从步骤 1 开始并重新运行迁移。