GitLab Runner 文档

GitLab Runner是一个开源项目,用于运行项目并将结果发送回GitLab。它与GitLab CI/CD一起使用,这是GitLab提供的开源持续集成服务,用于协调作业。

必备条件

GitLab Runner是用Go编写的,可以作为一个二进制文件运行。不需要具体的语言要求。

它是为在GNU/Linux、MacOS和Windows操作系统上运行而设计的。其他操作系统可能会工作,只要你可以在它们上编译一个GO二进制文件。

如果要使用Docker,请安装最新版本。GitLab Runner需要最低限度的docker版本 v1.13.0

特征

允许的:

  • 同时运行多个作业
  • 使用多个token与多个服务器(甚至每个项目)。

作业可以运行在:

  • 本地
  • 用 docker 容器
  • 使用Docker容器并在SSH上执行作业。
  • 在不同的云和虚拟化管理程序上使用带有自动标度的Docker容器。
  • 连接到远程SSH服务器。

用 GO 来写的,并且作为单个二进制文件分发,没有任何其他要求。
支持Bash和WindowsPowerShell。
工作于GNU/Linux、MacOS和Windows(几乎可以在任何地方运行Docker)。
允许自定义作业运行环境。
自动重新加载配置而不重新启动。
容易使用设置来支持 docker,docker-ssh,Parallels,或者ssh运行环境。
启用Docker容器的缓存。
安装方便,可以作为GNU/Linux、MacOS和Windows的服务。
Embedded Prometheus metrics HTTP server.
Referee workers to monitor and pass Prometheus metrics and other job-specific data to GitLab.

GitLab版本兼容性

GitLab Runner 版本应该与 GitLab 版本同步。尽管老版本的 runner 可能仍然可以使用较新的 GitLab 版本,反之亦然,但在某些情况下,如果存在版本差异,则功能可能不可用或工作不正常。

在小版本更新之间保证了向后兼容性,但是请注意,GitLab的小版本更新可能引入新的特性,这将要求 Runner 的版本在相同的小版本上。

安装 GitLab Runner

GitLab Runner可以在GNU/Linux、MacOS、FreeBSD和Windows上安装和使用。您可以使用Docker安装它,手动下载二进制文件,或者使用GitLab提供的rpm/deb包存储库。下面可以找到有关不同安装方法的信息:

  • Install using GitLab’s repository for Debian/Ubuntu/CentOS/RedHat (preferred).
  • Install on GNU/Linux manually (advanced).
  • Install on macOS.
  • Install on Windows.
  • Install as a Docker service.
  • Install in autoscaling mode using Docker machine.
  • Install on FreeBSD.
  • Install on Kubernetes.
  • Install the nightly binary manually (development).

注册GitLab Runner

一旦安装了GitLab Runner,就需要在GitLab注册它。
学习如何注册GitLab Runner。

使用GitLab Runner

请参阅命令文档。
参见最佳实践文档。

选择执行人

GitLab Runner实现了许多可用于在不同场景中运行您的构建的执行器。如果您不知道要选择什么,请阅读“我不确定”部分。访问兼容性图表,找出每个执行器支持的特性和不支持的特性。

若要跳转到每个执行者的特定文档中,参见:

  • Shell.
  • Docker.
  • Docker Machine and Docker Machine SSH (autoscaling).
  • Parallels.
  • VirtualBox.
  • SSH.
  • Kubernetes.

我们没有计划发展新的执行者,我们也不接受新执行者的捐助。有关详情,请参阅联络中心。

配置GitLab Runner

请参阅有关配置GitLab Runner的信息,以及:

  • 高级配置选项:了解如何使用GitLab Runner使用的TOML配置文件。
  • 使用自签名证书:配置连接到GitLab服务器时用于验证TLS对等点的证书。
  • 使用Docker机器的自动标度:在使用Docker机器按需创建的机器上执行作业。
  • 自动标度GitLab Runner on AWS
  • GitLab Runner的init系统:了解运行程序如何基于操作系统安装init服务文件。
  • 支持shell:了解支持哪些shell脚本生成器允许在不同系统上执行构建。
  • 安全考虑:在使用GitLab Runner运行作业时,要注意潜在的安全问题。
  • Runner监控:学习如何监控Runner的行为。
  • 自动清除Docker映像:一个简单的Docker应用程序会自动垃圾收集GitLab Runner缓存和磁盘空间不足时的图像。
  • 将GitLab Runner配置为在代理后面运行:了解如何设置Linux代理并配置GitLab Runner。对Docker执行人特别有用。
  • 特性标志:学习如何使用功能标志在beta阶段访问特性,或者在处理完整的弃用和替换之前启用中断更改。
  • 配置会话服务器:了解如何配置会话服务器,以便与Runner负责的作业进行交互。

检修故障

阅读常见问题解答常见问题。

发布过程

GitLab Runner项目发布过程的描述可以在process.md中找到

捐款

欢迎捐款,详情见CONTRIBUTING.md。

开发

请参阅要进入GitLab Runner的开发文档。如果您是GitLab Runner项目的审阅者,那么请花点时间阅读GitLab Runner文档。

改变log

请参阅查看最近更改的变更。

许可证

此代码是在MIT许可证下分发的,请参阅许可文件。