ubuntu上安装gitlab-runner安装与配置

1. 前言

在ubuntu上安装gitlab-runner有两种方式: 一种是使用deb/rpm包安装; 一种是使用二进制文件安装.

前一种更方便, 后一种使用范围更广泛, 可以适用于Archlinux或其它任何架构的Linux 发行版.

本文主要介绍使用deb/rpm包安装gitlab-runner, 二进制安装方式可以参考官方文档Using binary file install gitlab-runner

2. 下载gitlab-runner

2.1. 确定版本号

在下载gitlab-runner之前, 最好确定一下服务器上gitlab当前的版本, 然后找到与之对应的gitlab-runner进行安装, 避免出现兼容性问题.

  • 首先确定gitlab版本信息, 可以使用如下命令在服务器端查询, 当然也可以在gitlab web界面帮助信息中找到版本号.
    1
    2
    3
    4
    5
    6
    7
    gitlab-rake gitlab:env:info

    # 例如
    ...
    GitLab information
    Version: 15.8.1-ee
    Revision: c49deff6e37

2.2. 下载安装gitlab-runner

确定号版本号后即可执行如下命令, 将其中的版本号替换为合适的版本号.

关于gitlab-runner与gitlab的兼容性原则,gitlab和gitlab-runner在主版本和小版本(major.minor)保持同步,具有相同主版本和小版本号的gitlab和gitlab-runner兼容性最好, 较老的runner可能可以兼容比較新的gitlab,反之亦然,但是不能完全保证.详情请参考官网关于兼容性原文

如何找到对应版本的rpm/deb包, 可以参考gitlab官网-GitLab Runner bleeding edge releases

1
2
3
4
5
6
7
8

# Replace ${arch} with any of the supported architectures, e.g. amd64, arm, arm64
# replace ${gitlab_version} with the version of gitlab
# "https://gitlab-runner-downloads.s3.amazonaws.com/${version}/deb/gitlab-runner_${arch}.deb"
# for example

curl -LJO "https://gitlab-runner-downloads.s3.amazonaws.com/v15.8.1/deb/gitlab-runner_amd64.deb"

3. 安装

一旦有了安装包, 安装就比较简单了. 安装包会帮助处理很多事情.

按照以下步骤为您的系统安装软件包。
例如,对于Debian或Ubuntu:

1
2
3

sudo dpkg -i gitlab-runner_<arch>.deb

4. 注册gitlab-runner

  • 向GitLab-CI注册一个Runner需要两样东西:GitLab-CI的url和注册token。

  • 其中,token是为了确定你这个Runner是所有工程都能够使用的Shared Runner还是具体某一个工程才能使用的Specific Runner。

  • 如果要注册Shared Runner,你需要到管理界面的Runners页面里面去找注册token.

  • 打开gitlab页面menue > admin > Settings > CI/CD > runner registration, 在Setup shared runner一节可以找到相应的url和token

  • 注册完成之后,在页面menue > admin > runner就会多出一条Runner记录

    1
    2
    3

    sudo gitlab-runner register --url your_gitlab_server_url --registration-token your_token

gitlab-runner 常用命令

查看帮助

1
2
3

gitlab-runner --help

查看子命令帮助文档

1
2
3

gitlab-runner <command> --help

查看已经注册的gitlab-runner

1
2
3

gitlab-runner list

向server注册gitlab-runner

1
2
3
4
5
6
7

# 非交互模式下注册

# 交互模式下注册
gitlab-runner register


5. troubleshooting

问题1: 当执行sudo dpkg -i gitlab-runner_<arch>.deb 报错’Package git is not installed’.

1
2
3
4
5
6
7
8
9
10
Preparing to unpack gitlab-runner_amd64.deb ...
Unpacking gitlab-runner (15.8.1) ...
dpkg: dependency problems prevent configuration of gitlab-runner:
gitlab-runner depends on git; however:
Package git is not installed.

dpkg: error processing package gitlab-runner (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
gitlab-runner

解决办法: 安装git

1
2
3
4
5
6
7

sudo apt update
sudo apt install git

# 查看是否安装成功
git --version

6. 关联阅读

gitlab安装升级及迁移

使用gitlab issue board的四种方式

GitLab集成PlantUML

gitlab-runner安装与配置

fedora上安装gitlab-runner安装与配置

macOS上安装gitlab-runner安装与配置

ubuntu上安装gitlab-runner安装与配置

windows上安装gitlab-runner

gitlab CICD基础

7. 参考文档

Install GitLab Runner manually on GNU/Linux

Registering runners

gitlab runner命令