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许可证下分发的,请参阅许可文件。