1、包管理工具
Add GitLab's official repository:添加官方仓库
# For Debian/Ubuntu/Mint
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
# For RHEL/CentoS/Fedora
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash
更新runner
# For Debian/Ubuntu/Mint
sudo apt-get update
sudo apt-get install gitlab-runner
# For RHEL/Centos/Fedora
sudo yum update
sudo yum install gitlab-runner
Install the latest version of GitLab Runner:安装最新版本
# For Debian/Ubuntu/Mint
sudo apt-get install gitlab-runner
# For RHEL/CentoS/Fedora
sudo yum install gitlab-runner
To install a specific version of GitLab Runner:安装指定版本
# for DEB based systems
apt-cache madison gitlab-runner
sudo apt-get install gitlab-runner=10.0.0
# for RPM based systems
yum list gitlab-runner --showduplicates sort -r
sudo yum install gitlab-runner-10.0.0-1
2、手动deb/rpm包
2.1、下载软件包
官网 : https://gitlab-runner-downloads.s3.amazonaws.com/latest/index.html上找到最新的文件名和选项。
国内 : https://mirrors.tuna.tsinghua.edu.cn/ 上找到最新的文件名和选项。
选择一个版本并下载二进制文件,如文档所述,该文件用于下载任何其他标记的GitLab Runner发行版。
2.2、对于Debian或者Ubuntu:
curl -LJO https://gitlab-runner-downloads.s3.amazonaws.com/latest/deb/gitlab-runner <arch>.deb
dpkg -i gitlab-runner <arch>.deb
dpkg -i gitlab-runner_<arch>.deb
2.3、对于CentOS或者Red Hat Enterprise Linux:
curl -LJO https://gitlab-runner-downloads.s3.amazonaws.com/latest/rpm/gitlab-runner<arch>.rpm
rpm -i gitlab-runner <arch>.rpm
rpm -Uvh gitlab-runner_<arch>.rpm
3、GitLab Runner安装二进制文件
3.1、下载指定版本 : 将上面URL中的latest切换为V12.6
# Linux x86-64
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
# Linux x86
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-386
#Linux arm
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-arm
#Linux arm64
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-arm64
3.2、添加执行权限
sudo chmod +x /usr/local/bin/gitlab-runner
3.3、创建一个gitlab用户
sudo useradd--comment 'GitLab Runner'--create-home gitlab-runner --shell /bin/bash
3.4、安装并作为服务运行
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
sudo gitlab-runner start
3.5、更新
#停止服务
sudo gitlab-runner stop
#下载新版本二进制包
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
#赋予执行权限
sudo chmod +x /usr/local/bin/gitlab-runner
#启动服务
sudo gitlab-runner start
4、Docker安装
# 创建挂载目录
mkdir /home/devops/gitlab-runner/config
#运行docker
docker run -itd -v /home/devops/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner:v15.3.0
5、两种部署方式
5.1、命令行部署
运行注册命令
sudo gitlab-runner register
输入需要绑定的GitLab实例URL地址
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/): http://192.168.1.xxxxx/
输入需要绑定的GitLab实例Token地址
Please enter the gitlab-ci token for this runner: pnsBhDZy_iYH_xxxxxx
输入Runner的描述(可以在GitLab用户界面中更改)
输入Runner关联的tag,用逗号隔开(可以在GitLab用户界面中更改)
Please enter the gitlab-ci tags for this runner (comma separated): test
输入Runner的Executor
Please enter the executor: ssh, kubernetes, shell, docker, docker-ssh, parallels, virtualbox, docker+machine, docker-ssh+machine, custom: shell
快捷部署
sudo gitlab-runner register \
--non-interactive \
--url "http://xxx" \
--registration-token "GR1348941mL-xxx" \
--executor "docker" \
--docker-image docker:stable \
--description "xxx" \
--tag-list "xxx" \
--run-untagged="false" \
--locked="true" \
--access-level="not_protected"
5.2、Docker部署
docker run -itd --rm -v -/data/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner:v12.6.0 register
--non-interactive
--executor "shell"\
--url "http://gitlab.devops.com"\
--registration-token "RjAoLah8Vp7JCGyNzZwf"\
--description "devops-runner"\
--tag-list "build,deploy"\
--run-untagged="true"\
--locked="false"\
--access-level="not_protected"
6、注册相关的命令
6.1、注册命令
gitlab-runner --debug <command> #调试模式排查错误特别有用。
gitlab-runner <command> --help #获取帮助信息
**gitlab-runner run #普通用户模式 配置文件位置 ~/.gitlab-runner/config.toml**
sudo gitlab-runner run # 超级用户模式 配置文件位置/etc/gitlab-runner/config.tom
6.2、启动命令
gitlab-runner register #默认交互模式下使用,非交互模式添加 --non-interactive
gitlab-runner list #此命令列出了保存在配置文件中的所有运行程序
**gitlab-runner verify #此命令检查注册的runner是否可以连接,但不验证GitLab服务是否正在使用runne**r。 --delete 删除
gitlab-runner unregister #该命令使用GitLab取消已注册的runner。
#使用令牌注销
gitlab-runner unregister --url http://gitlab.example.com/ --token t0k3n
#使用名称注销(同名删除第一个)
gitlab-runner unregister --name test-runner
#注销所有
gitlab-runner unregister --all-runners
6.3、服务管理
gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
# --user指定将用于执行构建的用户
#`--working-directory 指定将使用**Shell** executor 运行构建时所有数据将存储在其中的根目录
gitlab-runner uninstall #该命令停止运行并从服务中卸载GitLab Runner。
gitlab-runner start #该命令启动GitLab Runner服务。
gitlab-runner stop #该命令停止GitLab Runner服务。
gitlab-runner restart #该命令将停止,然后启动GitLab Runner服务。
gitlab-runner status #此命令显示GitLab Runner服务的状态。当服务正在运行时,退出代码为零;而当服务未运行时,退出代码为非零。
评论区