我正在尝试使用Gitlab CI和PHP / Symfony项目设置管道。我的.gitlab-ci.yml
文件应包含3个阶段:
目前,它可以正常运行,但是只能通过在每个测试中同时运行构建步骤-这意味着我将相同的构建步骤重复两次,并且所需时间更长。
我注意到,Gitlab允许您构建Docker映像并将其存储在项目中,但是目前,是否存在一种机制来构建Docker映像,将其存储(作为工件?)并将其传递到测试阶段,所以他们不需要重复构建?
答案 0 :(得分:0)
尽管确实建议使用注册表来存储图像,但还是可以解决您的问题:
在build
阶段,将图像另存为文件:
docker save -o myimage.tar myimage:build123
将myimage.tar
定义为工件,在后续阶段作业中使用depends_on
并在其中加载图像:
docker load -i myimage.tar