25

嗯,非常基本的问题,但我只是没有找到(好的)文档;开始了:

  • 我可以在同一台服务器上设置/运行多个跑步者吗?
  • 跑者是什么意思?这是(综合)安装还是我开始的过程/opt/gitlab-runner/bin/runner
  • 关于/opt/gitlab-runner/bin/runner:启动几个这样的过程是否有意义?(它们不会单独显示在 gitlab-ci webview 的“Runners”选项卡下)

谢谢。

4

4 回答 4

9

对于其他试图在 Windows 上运行多个 gitlab-runners 的人:

  • 将 gitlabrunner.exe 下载/复制到两个不同的位置。
  • 将它们注册到各自的文件夹中。
  • 安装它们并为 -n 标志提供不同的名称,例如:
gitlab-runner-windows-amd64.exe install -n dockerbuilder
  • 使用带有 -n 标志的相同名称启动它们。
于 2020-02-13T13:15:08.940 回答
7
  1. 是的,您可以设置多个跑步者。有关更多信息,请参阅https://docs.gitlab.com/runner/
  2. 您通常在与主 gitlab 实例不同的盒子上设置跑步者。至少我是这样做的。Omnibus GITLAB 是指通过 Web UI 维护和访问您的存储库的主系统。Runners 是孤立的进程(工作者),它们等待新的提交被推送,然后执行构建。
  3. 一个好的做法是设置多个运行器,专门用于特定技术。例如,用于 JAVA、NodeJS、Python、Ruby 或 PHP 构建的专用运行器。如果 UI 中未显示任何运行器,则它们未在您的实例中正确注册。请参阅 #1 中的文档
于 2016-03-10T12:59:23.373 回答
2

您可以运行多个实例,但由于 gitlab 12.2 有重要警告: https ://docs.gitlab.com/runner/faq/README.html#why-cant-i-run-more-than-one-instance-of-赛跑者

为什么我不能运行多个 Runner 实例?

您可以,但不能共享相同的 config.toml 文件。

使用同一个配置文件运行多个 Runner 实例可能会导致意外且难以调试的行为。在 GitLab Runner 12.2 中,只有一个 Runner 实例可以一次使用特定的 config.toml 文件

于 2019-11-26T12:52:25.867 回答
1

我有一个设置,我需要一个跑步者来完成两个不同的工作。当您定义并发时,它会为给定机器中的所有运行器设置并发。

如果您有两个跑步者(具有不同的标签或设置)并且concurrent=2,这意味着两者都可以并行运行 2 个作业。如果concurrent=1,一次只有一个跑步者会运行一项工作。

在这里找到解决方案:https ://forum.gitlab.com/t/run-runners-in-parallel-on-the-same-server/9213/2 concurrent=2并为每个跑步者添加limit=1最多 2服务器上的作业,并限制每个跑步者只有一个作业。

于 2019-09-13T13:08:32.470 回答