Jenkins-自动部署,备份

Jenkins-自动部署,备份

  问题导入:

    环境:

      CentOS 7,   Tomcat 8.5,   Jdk 1.8,   Maven 3.25 ,Jenkins war包 2.x

    原因:

      每次部署都需要手动上传war包,备份以及重启服务,耗时耗力;

  

  解决方案:

    利用Jenkins自动部署

    1.安装并且配置Jenkins.参考:https://blog.csdn.net/zh520qx/article/details/55669142

    2.安装Jenkins插件:Publish Over SSH ,重启Jenkins.

    3.先配置服务器信息:点开:系统管理-->系统设置-->(往下拉)找到Publish over SSH,如图配置:

    

Jenkins-自动部署,备份

    4.回到首页,打开任务(项目)的配置:

    

Jenkins-自动部署,备份

    找到:

    

Jenkins-自动部署,备份

  

Jenkins-自动部署,备份

 5.此处,已经配置完了.接下来就是shell脚本,脚本将进行备份以及重启tomcat.,这里贴出本人的完整的shell脚本,根据个人情况.shell空格敏感,也可以参考其他的写法;

#!/bin/sh echo "开始执行" echo "删除旧的备份文件" rm -rf /app/backfils/xxx/xxx echo "备份项目,重新从tomcat中复制项目文件到此处" cp -r /app/tomcat/webapps/app/backfiles/xxx/ echo "停止tomcat" /app/tomcat/bin/shutdown.sh sleep 10 echo "杀掉进程" pid=$(ps -ef |grep -w 'tomcat-Djava' | grep -v 'grep'|awk '{print $2}') if [ -n $pid]; then kill -9 $pid sleep 3 fi echo "删除tomcat旧的war包以及项目文件" rm -rf /app/tomcat/webapps/xxx rm -rf /app/tomcat/webapps/xxx.war echo "复制文件到tomcat发布目录下" cp /app/deployfiles/xxx/xxx.war /app/tomcat/webapps/ echo "启动tomcat" /app/tomcat/bin/startup.sh echo "完成"

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyydwx.html