CICD详解(十)——Jenkins+Gitlab实战

今天继续给大家介绍Linux运维相关知识,本文主要内容是Jenkins+Gitlab实战。
在上文CICD详解(八)——gitlab安装与配置中,我们配置完成了Gitlab。今天,我们将使用Jenkins配合Gitlab进行项目实战。
在本次实战中,设备及其IP地址如下:
Jenkins:192.168.136.20
Gitlab:192.168.136.11

一、Jenkins中Git插件安装

首先,我们先在Jenkins中安装Git的插件,我们在插件中搜索Git,选择安装Git和Gitlab,如下所示:
CICD详解(十)——Jenkins+Gitlab实战_第1张图片
CICD详解(十)——Jenkins+Gitlab实战_第2张图片
注意,这两个软件的安装可能会出现问题,我在安装这一步骤的时候出现了大量报错,插件安装失败,关于此问题的解决我已经单独整理成文,出现同样问题的同学请参考:CICD详解(十四)——Jenkins插件安装失败解决
之后,因为要使用Jenkins管理Gitlab,因此在Jenkins设备上必须有Git的客户端,否则在Jenkins上尽管有Gitlab的插件,但是本地没有Git命令,也无法进行项目的管理。
在Jenkins设备上,配置好清华大学的REPO源后(关于该配置请见文章CICD详解(八)——gitlab安装与配置),执行命令:

yum install -y git

即可完成Jenkins设备上Git客户端的安装。

二、Jenkins密钥认证

在完成上述配置后,我们还要先配置Jenkins设备在Gitlab设备上进行密钥认证,否则,由于Gitlab的认证,我们也会配置失败。
在Jenkins设备上,执行命令:

ssh-keygen

即可生成本设备的公私钥对,执行命令:

cat /root/.ssh/id_rsa.pub

即可查看本设备的公钥,执行结果如下所示:

完成上述配置后,我们把Jenkins设备的公钥复制到Gitlab的用户认证模块,如下所示:
CICD详解(十)——Jenkins+Gitlab实战_第3张图片
注意,上述配置完成后,我们最好重新配置、启动Gitlab,执行命令:

gitlab-ctl reconfigure
gitlab-ctl start

三、Jenkins项目拉取

最后,我们需要配置Jenkins对Git项目的拉取,选定一个项目,查看其SSH和HTTP地址,如下所示:
CICD详解(十)——Jenkins+Gitlab实战_第4张图片
回到Jenkins设备上,我们新创建一个项目。由于我们已经安装了Git插件,因此我们在Build时可以选择Git类型,如下所示:
CICD详解(十)——Jenkins+Gitlab实战_第5张图片
我们在URL部分添加刚才复制的Git项目的Git地址,但是,这里要注意,由于此时我们的Git项目还没有配置,因此该地址无法访问,我们需要手动的将gitlab.example.com修改为Gitlab的IP地址。
之后,我们还需要添加一个认证,在这里,我们选择认证方式是SSH用户名和私钥,如下所示:
CICD详解(十)——Jenkins+Gitlab实战_第6张图片
Jenkins设备的私钥可以通过执行命令:

cat /root/.ssh/id_rsa

来查看,结果如下:

将私钥全部复制后,配置如下:
CICD详解(十)——Jenkins+Gitlab实战_第7张图片
配置完成认证方式后,如果发现Git项目没有红色的报错信息,就说明我们的项目配置成功了,结果如下所示:
CICD详解(十)——Jenkins+Gitlab实战_第8张图片
https://blog.csdn.net/weixin_40228200

你可能感兴趣的:(自动化运维,运维,Linux,CICD,Jenkins,Gitlab)