如何解决将 Nexus 存储库复制到 GitLab 注册表
初始状态:
- 一个包含多个项目的 GitLab 实例;
- GitLab 项目的管道依赖于许多二进制文件,包括 Docker 镜像
- 所有这些二进制文件和图像都存在于 Nexus (NXRM3) 的本地 OSS 实例中,以各种格式(docker、maven、raw 等)的托管或组存储库或由此 Nexus 中的存储库代理的远程存储库。
目标状态:
挑战:
- 有什么自动化方法比使用 Nexus REST API“遍历”Nexus 的自定义应用程序/脚本更有效(更少的编码、测试等),在 GitLab 中创建相应的注册表(使用 GitLab API ),从 Nexus 存储库中提取所有工件,然后将它们推送到创建的 GitLab 注册表中?
注意:
- 将 Nexus 存储库类型正确映射到 GitLab 是一个单独的挑战。
- 在 GitLab 中正确复制 Nexus 存储库分类法是一项单独的挑战。
- 将 Nexus 存储库权限正确转移到 GitLab 是一项单独的挑战。
解决方法
我建议创建一个脚本来执行以下操作:
-
列出存储在上述 Nexus 实例的 Docker 存储库中的 Docker 映像的脚本。
-
从上述 Nexus Docker 格式存储库中提取 Docker 映像并将其推送到本地主机上的 Docker 注册表的脚本。
-
从本地 Docker 注册表中提取上述 Docker 映像并将其推送到上述 GitLab 项目 Docker 注册表的脚本。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。