插件的安转

首先在jenkins插件管理中找到 publish over ssh ,并安转。

系统配置

插件安装号以后,在jenkins 的系统配置里面的最下方会有个shh的相关配置选择。

目标服务器这边 登录方式有三种,可自行选择,我这边是按照密码登录

构建配置

(基础发布的构建可以参考我之前的文章,这边主要是讲热部署)
在构建后选择Send build artifacts over SSH,并按照自身需求完成配置。
Source files: 需要发送给远程主机的源文件。
Remove prefix 移除前面的路径。如果不设置这个参数,则远程主机会自动创建构建源 source files 包含的那个路径。
Remote directory: 远程主机目录。


注:Remove prefix 的路劲设置需要特别注意,以下是jenkins打包后war包存放的路径:/var/lib/jenkins/workspace/Test-Maven/target/test.war,jenkinsRemove prefix的初始路径是到“Test-Maven”这一层的。

Exec command: 在远程主机上执行的命令,或者执行的脚本。

echo ‘STOP donghang service’
tomcat_home=/usr/local/Tomcat8.5
sh $tomcat_home/bin/shutdown.sh;
ls
tom_pid=`ps -ef | grep tomcat8_8095 | grep -v grep | awk '{print $2}'`
if [ -n "$tom_pid" ];
then
echo “tomcat 关闭失败,将强制结束进程:” $tom_pid
kill -9 $tom_pid;
fi
echo “tomcat 进程结束”
echo “清空weapps部署目录并复制新war包…”
rm -rf $tomcat_home/webapps/ROOT $tomcat_home/webapps/ROOT.war
cp $tomcat_home/webapps/app/sdHr-0.0.1-SNAPSHOT.war $tomcat_home/webapps/ROOT.war
echo “重新启动项目…”
BUILD_ID=dontKillMe
sh $tomcat_home/bin/startup.sh

脚本中最主要的就是将历史war包删除,然后将webapps/app下的war包复制到webapps文件夹下,并将war包改名ROOT。

扩展

改名这段可通过其他方法实现:
在构建时做相应配置,这个时候就直接将war包名称定义好

pwd
if [ -e "*.war" ]; then rm -rf *.war
fi
cp /var/lib/jenkins/workspace/DsmsTest-Maven/target/*.war /target/ROOT.war

笔记:
spingboot 打war包 需要注意,由于springboot内置了Tomcat 所以打war包,需要修改pom相应配置,使其打包时提出Tomcat,并且项目启动项需要调整

大佬链接: springboot打war包的详细说明

参考大佬文章: springboot启动类SpringApplicationBuilder说明

基于linux下的Jenkins热部署配置相关推荐

  1. Linux下搭建jenkins+svn+http+maven自动化部署

    Linux下搭建jenkins+svn+http+maven自动化部署 服务器设置: 卸载redhat的yum,安装centos的yum,配置第三方yum 1.删除redhat原有的rpm -qa | ...

  2. 环境部署(二):Linux下安装jenkins

    jenkins是一个Java开发的开源持续集成工具,广泛用于项目开发,具有自动化构建.测试和部署等功能,它的运行需要Java环境. 上篇博客介绍了Linux下安装JDK的步骤,这篇博客,介绍下Linu ...

  3. 基于Linux下 Oracle 备份策略(RMAN)

    基于Linux下 Oracle 备份策略(RMAN) --********************************** -- 基于Linux下 Oracle 备份策略(RMAN) --**** ...

  4. Linux下samba的安装与配置

    physique 博客园 首页 新随笔 联系 管理 订阅 随笔- 203  文章- 0  评论- 33 Linux下samba的安装与配置 转载来源:http://blog.chinaunix.net ...

  5. 基于Linux下 Oracle 备份策略(RMAN)---转自沙弥的世界

    --********************************** -- 基于Linux下 Oracle 备份策略(RMAN) --******************************* ...

  6. 这可能是东半球最详细的Linux下搭建Jenkins服务器实现自动打包的教程(上)

    前言:作为开发者,我们都遇到过这样一个问题,项目在测试期的时候,测试总会找我们打各个环境的包,什么生产包.prd包.pre包,每次都是我们打完包再发给测试.可是打包是要时间的啊,项目小还好,项目大的话 ...

  7. Springboot2 D3 SpringBoot开发实用篇 - 热部署 - 配置高级 - 测试

    SpringBoot开发实用篇 ​ 运维实用篇完结以后,开发实用篇采用日更新的形式发布给各位小伙伴,基本上是每天一集,目前已经发布完毕. ​ 开发实用篇中因为牵扯到SpringBoot整合各种各样的技 ...

  8. Linux下mysql支持中文,linux下mysql环境支持中文配置步骤

    sql脚本执行前加上: CREATE DATABASE IF NOT EXISTS mydatabase DEFAULT CHARSET utf8 COLLATE UTF8_GENERAL_CI; u ...

  9. Linux下Nagios的安装与配置

    Linux下Nagios的安装与配置 2017-03-23 17:40:20     来源:    点击:0 Nagios是企业普遍使用的最具影响力的网络信息监视系统之一,它可以动态监视指定的网络状态 ...

最新文章

  1. python commands_python commands模块在python3.x被subprocess取代
  2. oracle中resource权限,Oracle内置角色connect与resource的权限
  3. Excel中配置VBA的工作环境
  4. android ViewPager动画的实现原理及效果
  5. Python--第4次平时作业
  6. 【微机原理与接口技术】多功能可编程芯片 与 多功能电饭煲
  7. hadoop--MapReduce概述
  8. Python编程基础06:认识程序控制结构
  9. 95-872-060-源码-CEP-匹配事件提取
  10. linux找回删除的文件6,在Centos6/RHEL6上恢复ext4文件系统下误删除的文件
  11. 计算机操作系统英语,操作系统的英文介绍
  12. python用什么编译器-python用什么编译器
  13. Matlab中单元数组和结构数组
  14. matlab上一次计算结果影响,matlab运行结果跟手算结果不一致怎么办
  15. 【STC单片机学习】第九课:单片机按键使用
  16. Tensorflow2.6实现Unet结构神经网络(3D卷积)识别脑部肿瘤并实现模型并行
  17. SAP 后台表查询方法及消息报错定位方法
  18. PixelUtils:像素转换工具
  19. matplotlib绘图归纳(双纵轴、柱状渐变、堆叠柱状)
  20. 趣图:凌晨三点,灯火阑珊处

热门文章

  1. Mac 网页全屏截图
  2. JAVA实现人脸识别,活体检测之百度API
  3. github注册不了
  4. 四个面试小技巧 从月入15K到30K
  5. 一般户开户需要提供的资料
  6. 简单读懂人工智能:机器学习与深度学习是什么关系
  7. 创业实例(从月薪3500到身价700万 我在上海的奋斗)
  8. QTimer 定时器
  9. PCM原始音频数据格式介绍
  10. 公交线路提示(课设)