Gitlab-runner
GitLab Runner是一个开源项目,用于运行您的作业并将结果发送回GitLab。它与GitLab CI结合使用,GitLab CI是GitLab随附的用于协调作业的开源持续集成服务。
要求
GitLab Runner是用Go编写的,可以作为一个二进制文件运行,不需要特定于语言的要求。它旨在在GNU / Linux,macOS和Windows操作系统上运行。只要您可以在其他操作系统上编译Go二进制文件,其他操作系统就可能会运行。
如果要使用Docker,请安装最新版本。GitLab Runner需要最少的Docker
v1.13.0。GitLab Runner版本应与GitLab版本同步。尽管较旧的Runner仍可以使用较新的GitLab版本,反之亦然,但在某些情况下,如果版本存在差异,则功能可能不可用或无法正常工作。在次要版本更新之间可以保证向后兼容性,但是请注意,GitLab的次要版本更新会引入新功能,这些新功能将要求Runner在同一次要版本上使用。
特点
- 允许运行:
- 同时执行多个作业。
- 对多个服务器(甚至每个项目)使用多个令牌。
- 限制每个令牌的并行作业数。
- 可以运行作业:
- 在本地。
- 使用Docker容器。
- 使用Docker容器并通过SSH执行作业。
- 使用Docker容器在不同的云和虚拟化管理程序上自动缩放。
- 连接到远程SSH服务器。
- 用Go编写并以单个二进制文件的形式分发,而没有其他要求。
- 支持Bash,Windows Batch和Windows PowerShell。
- 在GNU / Linux,macOS和Windows(几乎可以在任何可以运行Docker的地方)上运行。
- 允许自定义作业运行环境。
- 自动重新加载配置,无需重启。
- 易于使用的设置,并支持Docker,Docker-SSH,Parallels或SSH运行环境。
- 启用Docker容器的缓存。
- 易于安装,可作为GNU / Linux,macOS和Windows的服务。
- 嵌入式Prometheus指标HTTP服务器。
- 裁判工作者监视Prometheus度量标准和其他特定于工作的数据并将其传递给GitLab。
不建议使用docker或者k8s安装runner, 以避免一些第三方工具使用的不便, 比如maven,docker,kubectl等
使用GItLab官方仓库安装
提供了Debian,Ubuntu,Mint,RHEL,Fedora和CentOS当前受支持版本的软件包。
| Distribution | Version | End of Life date |
|---|---|---|
| Debian | stretch | approx. 2022 |
| Debian | jessie | June 2020 |
| Ubuntu | bionic | April 2023 |
| Ubuntu | xenial | April 2021 |
| Mint | sonya | approx. 2021 |
| Mint | serena | approx. 2021 |
| Mint | sarah | approx. 2021 |
| RHEL/CentOS | 7 | June 2024 |
| RHEL/CentOS | 6 | November 2020 |
| Fedora | 29 | approx. November 2019 |
Add GitLab’s official repository: 添加官方仓库
1 | # For Debian/Ubuntu/Mint |
Install the latest version of GitLab Runner: 安装最新版本
1 | # For Debian/Ubuntu/Mint |
To install a specific version of GitLab Runner: 安装指定版本
1 | # for DEB based systems |
更新runner
1 | # For Debian/Ubuntu/Mint |
在GNU / Linux上手动安装GitLab Runner
如果你不能使用deb / rpm存储库安装GitLab Runner,或者你的GNU / Linux操作系统不在支持的版本中,则可以使用以下任一方法手动安装它。
- 在https://gitlab-runner-downloads.s3.amazonaws.com/latest/index.html上找到最新的文件名和选项(将
<arch>改成对应平台版本,如amd64) 。- 选择一个版本并下载二进制文件,如文档所述,该文件用于下载任何其他标记的 GitLab Runner发行版。
通过deb或rpm软件包
对于Debian或Ubuntu:
1 | curl -LJO https://gitlab-runner-downloads.s3.amazonaws.com/latest/deb/gitlab-runner_<arch>.deb |
对于CentOS或Red Hat Enterprise Linux:
1 | curl -LJO https://gitlab-runner-downloads.s3.amazonaws.com/latest/rpm/gitlab-runner_<arch>.rpm |
通过二进制文件
下载指定版本: 将URL中的latest切换为 v12.9(如需指定版本安装)。
1 | # Linux x86-64 |
添加执行权限
1 | sudo chmod +x /usr/local/bin/gitlab-runner |
创建一个gitlab用户
1 | sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash |
安装并作为服务运行
1 | sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner |
更新
1 | #停止服务 |
