搭建Jenkins从gitlab获取maven项目持续集成

时间:2023-01-25 15:53:00

 

环境 : centos7

安装Jenkins,这里选择使用service方式安装Jenkins,也可以下载Jenkins.war自己部署到tomcat下。

#添加Jenkins源: 
$
sudo wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.org/redhat/jenkins.repo
$ sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
#安装jenkins
$
yum install jenkins

启动Jenkins: sudo service jenkins start

查看状态 : service jenkins status

启动成功后,即可在浏览器访问了  http://your server ip:8080

如果访问不了,可能是因为centos防火墙。关闭或者开放端口。

搭建Jenkins从gitlab获取maven项目持续集成

我把端口号修改为了8088

修改端口号:

#打开配置文件,修改端口号 重启服务
$
vi /etc/sysconfig/jenkins
$
sudo service jenkins restart

按照提示 安装推荐插件 初始化管理员账户 进入主页面。

安装Jenkins插件时,遇到了一个坑,耗了我两个小时。 页面提示:This Jenkins instance appears to be offline。。    Jenkins处于离线环境,无法获取插件。

开始考虑虚拟机设置问题,但是系统可以联网。最后发现原来是插件网站被GFW墙了。解决方法挂VPN,或者使用国内插件镜像站点。

更新插件更新站点:系统管理 → 插件管理 → 高级  最下面

搭建Jenkins从gitlab获取maven项目持续集成

安装完插件,还需要做一些配置。

系统管理 → Global Tool Configuration 配置JDK GIT MAVEN,路径填写为服务器上的安装路径。

提示 : Jenkins从GitLab上获取源码需要1.9以上版本。需要自己下载新版本编译安装。具体方法谷歌。

搭建Jenkins从gitlab获取maven项目持续集成

Maven的配置这里也遇到了一些问题,花费了很多时间。

Local Maven Repository 这一项选择Default就会使用maven setting,xml中配置的本地仓库(我以为是固定使用~/.m2/repository)

选择其他两项本地仓库在Jenkins安装目录下。

图中红框部分如果项目构建过程中出现 maven Failed to create parent directories for tracking file 无法创建父目录就勾选此项。

搭建Jenkins从gitlab获取maven项目持续集成

配置完上面这些再配置GitLab认证

Jenkins →  Credentials  → System  → Global credentials (unrestricted)  → Add Credentials

搭建Jenkins从gitlab获取maven项目持续集成

选择用密钥的方式认证。(试了下用用户名 密码的方式,没有成功)。

生成密钥时,一定选择输入密码,不要选择跳过,上图中的Passphrase填入改密码,为空认证不通过。

ssh-keygen -t rsa -C “your@gmail.com”

生成的公钥加入到GitLab上,私钥填入上图红框位置。

 

完成上面的所有配置,就可以创建项目并执行构建了。

搭建Jenkins从gitlab获取maven项目持续集成