一、jenkins简介
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。Jenkins用Java语言编写,需要保证系统中安装jdk。
CI(Continuous integration持续集成)持续集成强调开发人员提交了新代码之后,立刻进行构建、(单元)测试。
CD(Continuous Delivery持续交付) 是在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境(类生产环境)中。
二、jenkins的安装
下载地址: https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/
安装启动jenkins:
rpm -ivh jdk-8u171-linux-x64.rpm
rpm -ivh jenkins-2.225-1.1.noarch.rpm
systemctl start jenkins
三、jenkins的访问
访问jenkins时所用端口为8080
更新插件源:
vim /var/lib/jenkins/hudson.model.UpdateCenter.xml
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
</site>
使用初始密码登录:
cat /var/lib/jenkins/secrets/initialAdminPassword
此时在目录/var/lib/jenkins中新生成一个updates目录
进入updates目录中更改default.json文件sed -i.bak 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json
以及sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
进入jenkins安装页面
进入后使用admin用户登录,更换密码
四、jenkins的使用
新建一个自由风格的任务
源码管理部分选择git
填写Repository URL为gitlab主机中的项目:git@172.20.10.2:root/demo.git
添加访问git仓库的私钥:
在构建触发器一栏选择轮询,每分钟查询一次
在构建一栏选择执行shell命令
Git提交代码到gitlab,jinkens轮询检测到代码仓库的变更,触发构建。
4.1 gitlab自动触发jenkins
Jenkins需要安装gitlab插件
在项目管理中构建触发器的模块中会出现一个新的模块:
在jenkins项目配置—>构建触发器处将url以及token放入gitlab中
默认情况下gitlab不允许本地调用,我们需要设置本地调用
在gitlab中设置—>网络—>外发请求栏点击允许webhook和服务对本地网络发送的请求