jenkins自动发布java代码

jenkins笔记(1)进行实战java代码发布,此利用github私有仓库拉去,jenkins利用maven编译源码后讲包发布致web服务器。html

1、git私有仓库建立

可参考GIT笔记中远程仓库搭建部分,此处java源码使用zrlog,将源码pull到github上,将jenkins公钥配置到github上,便可下一波。java

2、web服务器tomcat配置

在须要将代码发布的web服务器上须要配置tomcat的manager页面。git

yum install java-1.8.0-openjdk.x86_64 -y && \
wget -c -O /usr/local/apache-tomcat-9.0.2.tar.gz && \ http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.2/bin/apache-tomcat-9.0.2.tar.gz && \
cd /usr/local/ && tar -xf apache-tomcat-9.0.2.tar.gz &&\

此时tomcat已经安装成功,须要配置manager页面。
须要在/usr/local/tomcat/conf/tomcat-users.xml 添加如下内容。github

<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user name="admin" password="kaliarch" roles="admin,manager,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" />

jenkins自动发布java代码

修改完毕如上图,添加manager的role角色权限,其次须要修改manger页面的源控访问,添加jenkins的ip为白名单内。
修改/usr/local/tomcat/webapps/manager/META-INF/context.xml
默认tomcat的manager页面只容许本地的和ipv6的地址,此处个人jenkins服务器ip为:172.20.6.0/24,可根据实际状况来定,支持网段,不要开放所有开放0.0.0.0,以防**web

jenkins自动发布java代码
配置完成后须要启动tomcat/usr/local/tomcat/bin/startup.sh
此时,咱们能够进行测试web服务器的tomcatmanager界面,http://IP:8080/manager/index.html
填写配置文件内的用户名:admin,密码:kaliarch
jenkins自动发布java代码apache

3、建立发布项目

发布java,须要安装两个插件,Maven Integration plugin 和 Deploy to container Plugin,若没有安装则须要安装这两个插件 安装完插件后,须要重启jenkins。tomcat

3.1 新建item

输入项目名称,选择构建一个maven项目,肯定。
jenkins自动发布java代码服务器

3.2 配置源码管理

源码管理选择git,填入仓库url
jenkins自动发布java代码
此时发现会出现报错信息,由于此仓库为个人私有仓库,须要配置Credentials,点开add, Add Credentials的 Kind选择SSH Username with private key,Username选择以前在github上传的公钥用户的用户名,这次为root,Private Key为jenkins服务器登陆github的本地私钥,查看私钥cat /root/.ssh/id_rsa 复制粘贴到Key区域,完成添加。此时能够发现报错已经消失。
jenkins自动发布java代码app

3.3 配置发布到web服务器

添加增长构建后操做,选择Deploy war/ear to a container,WAR/EAR files填写**/*.war,Containers选择增长容器,增长tomcat 8.x,Credentials点add,此处填写的为tomcat的manager页面的用户名密码,此处为admin/kaliarch,
jenkins自动发布java代码
tomcat url填写web服务器的tomcaturl,
jenkins自动发布java代码ssh

3.4 配置邮件信息通知

添加增长构建后操做,选择Editable Email Notification,利用插件邮件来发送通知。
能够根据需求自定义邮件主题与内容,此处添加信息接受人,因为全局配置了always,在高级设置内,填写接受人邮箱。
jenkins自动发布java代码

3.5 信息查看

点击保存,并当即构建,能够查看日志信息。
jenkins自动发布java代码

登陆web服务器,查看war包已经发布完成。
jenkins自动发布java代码
打开web页面进行测试。
jenkins自动发布java代码

查看邮件通知。
jenkins自动发布java代码

至此,java程序已经完成发布,以后修改代码后能够提交到github,而后经过jenkins自动发布便可。