我有需要构建的Vuejs应用程序才能作为Docker映像推送到Nexus。所有Vuejs内容都存储在GitLab存储库中。
这些阶段的管道很简单
我将GitLab-runner与docker executor一起使用,并创建了Dockerfile,其中包含运行docker npm所需的软件包。
但是,通过所有这些步骤,我注意到gitlab ci将在每次新阶段开始时提取docker映像。因此,这将使我的工作流变成零碎,并且我无法从内置的Vuejs应用程序构建docker映像,也无法将映像推送到Nexus。
无论如何解决这个问题?谢谢
答案 0 :(得分:1)
是的,这是真的-在Gitlab(例如Jenkins
中)中,每个Job都运行着一个经过清理的新签出的存储库。生成的工件不会自动从一个作业转移到下一个作业。
这有时有时很难建立连接的管道,但这并非没有可能。
对于您的用例,建议将管道简化为两个步骤:
在完成 build 步骤之后,您可以使用Gitlab's Artifacts来传输build-output / build工件(可能是build
或dist
文件夹? )或Dockerfile
中第1步到第2步中需要的其他任何内容。