中标麒麟7.4部署gitlab-runner

1. 部署环境

本次部署环境完全断网。需要离线下载gitlab-runner及其依赖。

本次部署环境为中标麒麟7.4。目前机器上部署了gitlab,安装了maven。

2. 部署步骤

2.1 在外部下载好依赖

我首先在腾讯云上布置了一个centos7.9的虚拟机,没有安装任何东西。

之后在这上面安装yumdownloader,命令为:
yum install -y yum-utils

之后创建gitlabrunner文件夹(非必须),并下载依赖:
yumdownloader --resolve gitlab-runner

主要下载了这些包

同时,经过测试,gitlabrunner还依赖rsync,我的中标麒麟7.4上并没有,所以后续下载且只下载了rsync:
yumdownloader --resolve rsync

将上述软件包都放进中标麒麟7.4机器的文件夹下。我个人放在了/opt/gitlabrunner/下了。

2.2 安装gitlab-runner

------------个人猜想------------

如果上述依赖包完整,在/opt/gitlabrunner/下使用命令:

复制代码
sudo rpm -ivh *.rpm

就能完成安装。

-------华丽的分割线---------

下面是我的安装步骤:

bash 复制代码
#第一步安装rsync
sudo rpm -ivh rsync-3.1.2-12.el7_9.x86_64.rpm
#第二步安装这俩,因为没有循环依赖问题
sudo rpm -ivh perl-TermReadKey-2.30-20.el7.x86_64.rpm 
sudo rpm -ivh perl-Error-0.17020-2.el7.noarch.rpm 
#第三步同时安装git和perl-git,因为这俩循环依赖
sudo rpm -ivh perl-Git-1.8.3.1-25.el7_9.noarch.rpm git-1.8.3.1-25.el7_9.x86_64.rpm
#第四步同时安装gitlab-runner和gitlab-runner-help
sudo rpm -ivh gitlab-runner-18.3.0-1.x86_64.rpm gitlab-runner-helper-images-18.3.0-1.noarch.rpm
#验证gitlab runner是否安装成功
sudo gitlab-runner register

3 gitlab-runner的配置、连接与使用

gitlab runner可以理解为一个执行你的项目下文件.gitlab-ci.yml的执行器的配置工具,你需要再gitlabrunner中通过配置过程生成一个执行器,将执行器与gitlab项目/个人/全局绑定在一起,通过在.gitlab-ci.yml中写的tag和gitlabrunner中配置时设置的tag相匹配,决定使用哪个执行器执行.gitlab-ci.yml的内容。

那么gitlab runner在配置的过程中就涉及一些选择了,一是执行器选择,二是标签设置,三是如何配置,四是如何与gitlab相连接。

3.1 如何进行配置

一个gitlab runner是可以进行多个执行器配置的。可以分别服务于不同的项目、人员、全局,具体权限的配置在gitlab里,不在gitlab runner这边。

首先去gitlab这边,我们按照在项目级配置一个runner,只给本项目使用要求配置一个runner实例。 进入Settings -> CI/CD -> Runners。点击"新建项目runner"。进入新建一个runner。

这些配置好之后点击"创建runner"

之后选择你安装gitlab runner的平台。比如你在linux服务器上,或者在某台机器的docker内安装。(一般直接装在服务器上就可以了。)

之后会给出提示,去gitlabrunner那里使用命令,url和token在gitlab这边也给出了,复制过去即可。

之后会要求设置名称,随便设置即可。

之后会要求你选择执行器,其实选择docker最好,这里为了方便,我直接用shell了。

总结一下你需要输入的内容

GitLab实例URL: (你的GitLab地址)

注册令牌:从你项目的 Settings -> CI/CD -> Runners 页面获取 Registration token。

Runner描述符:给你这个Runner起个名字,比如 shell-runner-for-maven。

Runner标签:可以给这个Runner打上标签,比如 shell, maven。标签可用于在CI/CD中指定某个Runner运行作业。

执行器:输入 shell。这告诉Runner直接在宿主机的Shell环境中执行作业命令。

之后回到gitlab页面,点击页面最下方的"查看运行器",你就能够看到你的runner实例了。

3.2 执行器选择

执行器决定了这个runner实例接收的各种任务在哪里进行。直接使用shell是一个方便的选择,但是可能会产生垃圾文件。使用docker是最好的选择,每次都会清理。但是我还没有学会配置。

3.3 标签填写

gitlab runner这边的标签和名字与gitlab那边没有直接的关系。你在gitlab-ci.yml中写的tag与gitlab中配置的标签有关,与gitlabrunner中的无关。

出于方便以后辨识和维护,最好统一成一样的标签。

相关推荐
明月心9521 天前
git remote add 用法
gitlab
only_Klein1 天前
jenkins流水线报错:Connection reset by peer
ci/cd·kubernetes·gitlab·jenkins·ssl
梁萌2 天前
docker部署gitlab和gitlab runner
docker·eureka·gitlab
johnnyAndCode2 天前
Idea 设置GitLab时使用账密,而不是token的配置方法
gitlab·idea
天外飞雨2 天前
Gitlab使用
gitlab
BUTCHER53 天前
GitLab SSH 密钥配置
运维·ssh·gitlab
明月心9523 天前
GitLab使用
gitlab
明月心9524 天前
gitlab pull requets
gitlab
BUTCHER54 天前
GitLab基本设置
gitlab
张小凡vip4 天前
Kubernetes---gitlab的ci/cd发布基于k8s的项目示例参考
ci/cd·kubernetes·gitlab