Help us learn about your current experience with the documentation. Take the survey.

运行器

运行器是运行 GitLab Runner 应用程序的代理,用于在管道中执行 GitLab CI/CD 作业。 它们负责运行你在 .gitlab-ci.yml 文件中定义的构建、测试、部署和其他 CI/CD 任务。

运行器执行流程

以下是运行器工作流程的基本说明:

  1. 运行器必须先向 GitLab 注册,这会在运行器和 GitLab 之间建立持久连接。
  2. 当管道被触发时,GitLab 将作业提供给已注册的运行器。
  3. 匹配的运行器拾取作业,每个运行器一个作业,并执行它们。
  4. 结果实时报告回 GitLab。

更多信息请参见 运行器执行流程

运行器作业调度和执行

当需要执行 CI/CD 作业时,GitLab 根据 .gitlab-ci.yml 文件中定义的任务创建作业。 作业被放入队列中。GitLab 检查匹配的可用运行器:

  • 运行器标签
  • 运行器类型(如共享或组)
  • 运行器状态和容量
  • 所需能力

分配的运行器接收作业详情。运行器准备环境并按照 .gitlab-ci.yml 文件中指定的运行作业命令。

运行器类别

在决定要使用哪些运行器执行你的 CI/CD 作业时,你可以选择:

运行器可以是组运行器、项目运行器或实例运行器。GitLab 托管的运行器是实例运行器。

GitLab 托管的运行器

  • 版本:免费版、高级版、旗舰版
  • 提供:GitLab.com、GitLab Dedicated

GitLab 托管的运行器是:

  • 由 GitLab 完全管理。
  • 无需设置即可立即使用。
  • 在每个作业上运行在新的虚拟机上。
  • 包括 Linux、Windows 和 macOS 选项。
  • 根据需求自动扩展。

在以下情况下选择 GitLab 托管的运行器:

  • 你想要零维护的 CI/CD。
  • 你需要快速设置而不需要管理基础设施。
  • 你的作业需要在运行之间隔离。
  • 你正在使用标准的构建环境。
  • 你正在使用 GitLab.com 或 GitLab Dedicated。

自管理运行器

  • 版本:免费版、高级版、旗舰版
  • 提供:GitLab.com、GitLab 自管理版、GitLab Dedicated

自管理运行器是:

  • 由你安装和管理。
  • 在你自己的基础设施上运行。
  • 可根据你的需求定制。
  • 支持各种执行器(包括 Shell、Docker 和 Kubernetes)。
  • 可以共享或设置为特定的项目或组。

在以下情况下选择自管理运行器:

  • 你需要自定义配置。
  • 你想在私有网络中运行作业。
  • 你需要特定的安全控制。
  • 你需要项目或组运行器。
  • 你需要通过重用运行器来优化速度。
  • 你想管理自己的基础设施。

相关主题