Jenkins如何实现自动打包部署linux

 更新时间:2020年11月24日 16:08:35   作者:乔叶叶  
这篇文章主要介绍了Jenkins如何实现自动打包部署linux,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

需要用到2个插件。

git parameter:用于参数化构建时选择分支。

Publish Over SSH:用于上传jar包和操作tomcat

1.先在系统设置添加要连接的linux服务器,使用用户名和密码验证,不需要私钥和公匙。并在高级里点击test是否成功

2.新建maven的job,添加参数化构建

3.选择git,git的分支选择步骤2的name

4.maven命令输入打包install -Dmaven.test.skip=true -U

5. 添加over ssh,里面参数的配置参考:https://www.cnblogs.com/zz0412/p/jenkins_jj_10.html

6.我是先把jar或者war上传到BUILD_ID的备份目录(项目多的话,也可以在增加下$JOB_NAME/$BUILD_ID),然后又把jar复制到tomcat下,Exec command详见操作命令

#!/bin/sh
#kill tomcat pid
export BUILD_ID=$BUILD_ID

# 1.关闭tomcat
pidlist=`ps -ef|grep 8081|grep -v "grep"|awk '{print $2}'`
function stop(){
if [ "$pidlist" == "" ]
 then
  echo "----tomcat 已经关闭----"
  
 else
  echo "tomcat进程号 :$pidlist"
  kill -9 $pidlist
  echo "KILL $pidlist:"
fi
}

stop
pidlist2=`ps -ef|grep 8081|grep -v "grep"|awk '{print $2}'`
if [ "$pidlist2" == "" ]
  then 
    echo "----关闭tomcat成功----"
else
  echo "----关闭tomcat失败----"
fi



# 2.移除原来tomcat中webapps中的项目文件夹
rm -rf /usr/local/apache-tomcat-8081/webapps/ROOT/*
rm -rf /usr/local/apache-tomcat-8081/webapps/qingzhutool*
# 3.复制jenkins生成的war包到tomcat中webapps中
cp -r /home/war-jar-bak/$BUILD_ID/qingzhutool.jar /usr/local/apache-tomcat-8081/webapps
sleep 3s
# 4.修改war包的名称
#mv /usr/local/tomcat_mobile/webapps/mobile.war /usr/local/tomcat_mobile/webapps/ROOT.war
# 5.启动tomcat
cd /usr/local/apache-tomcat-8081/bin
sh startup.sh

最后执行sh的时候可能提示没权限,进入tomcat,给sh文件赋权限即可

chmod +x *.sh

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Java 中使用数组存储和操作数据

    Java 中使用数组存储和操作数据

    本文将介绍Java中常用的数组操作方法,通过详细的示例和解释,帮助读者全面理解和掌握这些方法,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • IntelliJ IDEA 设置代码提示或自动补全的快捷键功能

    IntelliJ IDEA 设置代码提示或自动补全的快捷键功能

    这篇文章主要介绍了IntelliJ IDEA 设置代码提示或自动补全的快捷键功能,需要的朋友可以参考下
    2018-03-03
  • SpringBoot 中使用JSP的方法示例

    SpringBoot 中使用JSP的方法示例

    本篇文章主要介绍了SpringBoot 中使用JSP的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • SpringCloud让微服务实现指定程序调用

    SpringCloud让微服务实现指定程序调用

    这篇文章主要介绍了SpringCloud让微服务实现指定程序调用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • java下使用kaptcha生成验证码

    java下使用kaptcha生成验证码

    这篇文章主要介绍了java下使用kaptcha生成验证码,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • IDEA集成git和使用步骤的实现方法

    IDEA集成git和使用步骤的实现方法

    这篇文章主要介绍了IDEA集成git和使用步骤的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • java-servlet-转发AND路径(详解)

    java-servlet-转发AND路径(详解)

    下面小编就为大家带来一篇java-servlet-转发AND路径(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • 基于StringUtils工具类的常用方法介绍(必看篇)

    基于StringUtils工具类的常用方法介绍(必看篇)

    下面小编就为大家带来一篇基于StringUtils工具类的常用方法介绍(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Java中的AQS框架原理详解

    Java中的AQS框架原理详解

    这篇文章主要介绍了Java中的AQS框架原理详解,AQS核心思想是,如果被请求的共享资源(state)空闲,则将当前请求资源的线程设置为有效的工作线程,并且将共享资源设置为锁定状态,需要的朋友可以参考下
    2023-12-12
  • SpringMVC项目访问controller时候报404的解决

    SpringMVC项目访问controller时候报404的解决

    这篇文章主要介绍了SpringMVC项目访问controller时候报404的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09

最新评论