Jenkins+Linux+maven+git持续集成配置
- 服务器安装所需环境JDK、Maven、Git
Jenkins自身采用java开发,所以必须安装JDK。
我们使用的集成项目都是采用Maven架构,所以必须安装Maven。
我们的项目使用Git管理源码,所以需要安装Git
安装完成之后在配置文件 /etc/profile中加入环境变量
如下:
export JAVA_HOME=/usr/local/java/jdk1.8.0_111
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.1
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
按“Esc”退出键,然后输入命令 :wq退出保存之后,再使用 source /etc/profile 命令进行刷新配置文件,否则不会生效
最后使用java –version验证
注意:Linux中上面的PATH变量中,多个变量连接时中间是英文状态的冒号“:”,Windows上是英文状态的分号“;”
CLASSPATH变量值前面有个英文状态下的点“.” 不要忘记了
2.安装Jenkins
安装Jenkins的方式有好几种,推荐第一种
第一种:离线安装
## http://pkg.jenkins-ci.org/redhat/
## 下载(也可以Windows下载上传到Linux服务器)
wget http://pkg.jenkins-ci.org/redhat/jenkins-2.179-1.1.noarch.rpm
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins.io.key ## 公钥
sudo yum -y install jenkins-2.179-1.1.noarch.rpm
第二种:在线安装
## http://pkg.jenkins-ci.org/redhat/
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
sudo yum -y install jenkins
第三种:基于Tomcat安装(目前我们公司使用的方式)
先安装Tomcat
然后从官网(mirrors.jenkins.io/war/latest/jenkins.war)下载Jenkins.war包,放到Tomcat的/webapps中,
启动Tomcat
最后浏览器访问:http://centosip:8080/jenkins
第四种:免安装方式
## 下载(也可以Windows下载上传到Linux服务器)
wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
sudo java -jar jenkens.war ## 启动服务,直至看到日志 `Jenkins is fully up and running`
curl http://localhost:8080/ ## Jenkins 已就绪
3.调整Jenkins的配置文件并启动
第三种和第四种安装方式不需要以下操作
调整Jenkins的配置文件
## sudo vim /etc/sysconfig/Jenkins
## sudo vim /etc/sysconfig/jenkins
JENKINS_USER="root" ## 原值 "jenkins" 必须修改,否则权限不足
JENKINS_PORT="8080" ## 原值 "8080" 可以不修改
## 还有开启 HTTPS 相关参数,此处不打算开启,故不作说明
安装目录: /usr/lib/jenkins
工作目录: /var/lib/jenkins(对应于环境变量 JENKINS_HOME)
启动
sudo systemctl enable jenkins
sudo systemctl restart jenkins
4.配置jenkins环境(JDK、Maven、Git)
系统配置:
系统配置 —— 配置全局JDK环境变量
系统配置 —— 配置Jenkins访问地址
系统配置 —— 配置git账号
全局工具配置:
全局工具配置 —— 配置JDK
全局工具配置 —— 配置Git
全局工具配置 —— 配置Maven
5.安装所需插件
需要安装的插件:
Gitlab #安装之后才可以在系统配置中指定gitlab的IP地址
Git Client #用于jenkins在gitlab中拉取源码
Git plugin #版本管理 GIT 的插件
Publish Over SSH #用于通过ssh部署应用(不适用ssh部署可以不安装)
Maven Integration plugin #项目构建 Maven 的插件,用于新建maven项目
Deploy to container #自动化部署工程所需要插件
在jenkins的插件管理里面直接在线安装,如图:
6.构建项目
构建项目步骤:
新建任务
设置任务名称以及构建项目架构方式
配置源码管理
Build全局配置
配置Post Steps —— 配置使用shell命令执行
写shell命令
Shell命令:
echo "cpss"
pid0=$(netstat -nlp | grep :8090 | awk '{print $7}' | awk -F"/" '{ print $1 }');
echo "javajar PID is :$pid0"
if [ -n "$pid0" ]; then
kill -s 9 $pid0;
fi
export jar_home=/root/.jenkins/workspace/drsrs/target
echo "use java at $jar_home"
cp -r $jar_home/drsrs.jar /usr/local/drsrs/drsrs.jar
echo "start"
BUILD_ID=dontKillMe nohup java -jar /usr/local/drsrs/drsrs.jar >/usr/local/drsrs/drsrslog.log 2>&1 &
echo "end"
echo "start success"
然后提交代码到git上,直接在jenkins中进行构建就可以啦~
如图: