Centos下Jenkins全流程环境搭建和配置-3-jenkins的工具配置

1、Jenkins全局工具配置

  1. 配置maven-系统管理-全局工具配置
    在这里插入图片描述
  2. 在服务器mvn -v查看maven home
    在这里插入图片描述
  3. 在jenkins配置maven,git(其实jenkins所在命令支持了git和maven命令,这些配置可有可无)
    在这里插入图片描述

2、安装jenkins ext插件

  1. jenkins有好几种安装插件的方式,我这里是下载插件然后直接导入
  2. 需要的基本插件 Maven Integration\SSH\gitlab-hook\gitlab-plugin
  3. 可上:http://updates.jenkins-ci.org/download/plugins/找一下
  4. 然后上传文件安装
    在这里插入图片描述

3、gitlab-hook,git钩子的配置

可达到检测代码的改变,自动构建的目的

  1. 在jenkins的maven工程找到Build Tiggers一栏
    在这里插入图片描述
  2. 复制红框中的地址和密钥
  3. 上gitlab,你得是这个项目的master或者owner才有这个权限
  4. 然后选择 Settings -> Integrations,在 URL 一栏中输入前面保存的 GitLab Webhook URL
  5. 在 Secret Token 一栏中输入前面保存的 Secret token,然后选择需要 trigger Jenkins 工程执行构建的事件,一般都是选合并和推送
    6.如下图,配置完成在这里插入图片描述

4、配置Git拉取代码的路径和分支

  1. 同样是在jenkins的maven工程,找到如下图位置,进行配置
    在这里插入图片描述

5、代码构建完成后,免密复制jar包到远程服务器

  1. 还是在jenkins的maven工程,找到如下图位置,进行配置
    在这里插入图片描述
  2. 填入:/opt/./autodeploycopy.sh
  3. 配置jenkins服务器和scp服务器的ssh key,达到免密
1. 在jenkins机器上找:/root/.ssh/ id_rsa.pub里面的key
2. 在tomcat机器上:新建:/root/.ssh/authorized_keys文件,填入上第一步得到的key

6、远程tomcat服务器进行重启、配置文件修改

  1. 使用SSH remote hosts插件
  2. 添加凭据在这里插入图片描述
  3. 然后到配置里配置并注册这台服务器
  4. 在这里插入图片描述
  5. 在这里插入图片描述
  6. 配置远程服务器完成
  7. 构建后,执行远程服务器的自动部署脚本
    在这里插入图片描述
  8. 自动部署全流程完成
  9. 脚本参考如下(拙劣,勿喷)
    复制到目标服务器
find /root/.jenkins/workspace/Autodeployfor_Paringk2x -name "parkingCommonCenterEntry*.war" |xargs -i scp {} root@172.18.2.18:/opt/tomcat/AutoDeploy
find /root/.jenkins/workspace/Autodeployfor_Paringk2x -name "parkingDeviceEntry*.war" |xargs -i scp {} root@172.18.2.18:/opt/tomcat/AutoDeploy
find /root/.jenkins/workspace/Autodeployfor_Paringk2x -name "parkingClientEntry*.war" |xargs -i scp {} root@172.18.2.18:/opt/tomcat/AutoDeploy
find /root/.jenkins/workspace/Autodeployfor_Paringk2x -name "parkingInspectionEntry*.war" |xargs -i scp {} root@172.18.2.18:/opt/tomcat/AutoDeploy
find /root/.jenkins/workspace/Autodeployfor_Paringk2x -name "parkingPushEntry*.war" |xargs -i scp {} root@172.18.2.18:/opt/tomcat/AutoDeploy
find /root/.jenkins/workspace/Autodeployfor_Paringk2x -name "parkingMaintainEntry*.war" |xargs -i scp {} root@172.18.2.18:/opt/tomcat/AutoDeploy

目标服务器进行自动发布

#!/bin/bash
Host='http:\/\/172.18.2.200:8092\/parking_business_entry\/'
Web_socket='ws:\/\/172.18.2.200:8092\/parking_ws_entry\/parkingws'
Img_Server='http:\/\/172.18.2.4:8880'
#Config_Url='http:\/\/116.62.158.143\/conf_test2_200.properties'
Config_Url='\/opt\/conf_test2_200.properties'
warlocation='/opt/tomcat7.0.75/AutoDeploy'
webappslocation='/opt/tomcat7.0.75/webapps'
function AutoDeploysingle(){
cd  ${warlocation}

rm -rf ${packname}

unzip -oq ${packname}*.* -d ${packname}

sed -i "s/^config.url.*$/config.url=$Config_Url/g"  ${warlocation}/${packname}/WEB-INF/classes/config.properties

rm -rf ${webappslocation}/${packname}

cp -R ${warlocation}/${packname}  ${webappslocation}
rm -rf ${warlocation}/${packname}
echo "${packname}更新成功!........"
}


packname='parking_api_entry'
if [  -f "${warlocation}/${packname}.war" ];then
AutoDeploysingle

fi

packname='parking_business_entry'
if [  -f "${warlocation}/${packname}.war" ];then
AutoDeploysingle
fi

packname='parking_collect_entry'
if [  -f "${warlocation}/${packname}.war" ];then
AutoDeploysingle

fi

packname='parking_ws_entry'
if [  -f "${warlocation}/${packname}.war" ];then
AutoDeploysingle

fi

if [  -d "${warlocation}/前端/" ];then

sed -i "s/HOST.*$/HOST\='$Host',/g"  ${warlocation}/前端/static/host.config.js
sed -i "s/WEB_SOCKET.*$/WEB_SOCKET\='$Web_socket',/g"  ${warlocation}/前端/static/host.config.js
sed -i "s/IMG_SERVER.*$/IMG_SERVER\='$Img_Server',/g"  ${warlocation}/前端/static/host.config.js
rm -rf ${webappslocation}/ROOT/*
cp -R ${warlocation}/前端/* ${webappslocation}/ROOT
echo "前端更新成功!...."

fi

echo "搞定,重启tomcat"
tomcat restart
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值