如何解决如何通过Vuejs应用程序构建docker映像并通过GitLab CI / CD推送到Nexus存储库?
我有需要构建的Vuejs应用程序才能作为Docker映像推送到Nexus。所有Vuejs内容都存储在GitLab存储库中。
这些阶段的管道很简单
- 设置(从管道中获取信息)
- 构建(npm install和npm run build)
- 创建docker映像(这将通过Vue应用程序执行docker构建)
- 将图片推送到Nexus
我将GitLab-runner与docker executor一起使用,并创建了Dockerfile,其中包含运行docker npm所需的软件包。
但是,通过所有这些步骤,我注意到gitlab ci将在每次新阶段开始时提取docker映像。因此,这将使我的工作流变成零碎,并且我无法从内置的Vuejs应用程序构建docker映像,也无法将映像推送到Nexus。
无论如何解决这个问题?谢谢
解决方法
是的,这是真的-在Gitlab(例如Jenkins
中)中,每个Job都运行着一个经过清理的新签出的存储库。生成的工件不会自动从一个作业转移到下一个作业。
这有时有时很难建立连接的管道,但这并非没有可能。
对于您的用例,建议将管道简化为两个步骤:
- 构建:设置和构建项目
- 发布:Docker构建并推送到Nexus
在完成 build 步骤之后,您可以使用Gitlab's Artifacts来传输build-output / build工件(可能是build
或dist
文件夹? )或Dockerfile
中第1步到第2步中需要的其他任何内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。