加快Gitlab CI重用docker机器的阶段

时间:2017-05-13 14:25:53

标签: docker optimization gitlab gitlab-ci gitlab-ci-runner

Gitlab CI每次为每个任务(阶段)提取docker镜像。这个操作浪费了很多时间。我希望尽可能优化。

我看到有两个地方可以使用:
  1.明确配置CI阶段以重用相同的docker机器   2.在构建下一次提交时使用之前提交的docker机器? (如果配置文件中没有更改)。

1 个答案:

答案 0 :(得分:3)

这种配置可以通过跑步者本身的pull_policy来指定。

正如Jakub在问题评论中强调的那样,在Gitlab.com上的共享运行者上,策略设置为scale_fill_manual,因此它总是会下载图像的新副本,如果有相同的副本本地。

这是由于安全原因造成的。

您可以在doc

中对此进行确认
  

如果您的Runner是公开的,则应使用此提款政策   并在GitLab实例中配置为共享Runner。它是   只有拉动策略,当Runner将被视为安全   与私人图像一起使用。

安全隐含的意思是,如果跑步者首先检查本地图像,非授权用户可以获得私人码头图像猜测其名称