文档章节

SSH 带密码参数登陆远程机器结合jenkins构建实现远程热部署

子群
 子群
发布于 2016/07/05 12:13
字数 329
阅读 342
收藏 0

工作中遇到jenkins构建项目之后结合maven部署插件远程部署到tomcat,tomcat没有重启,造成代码没有生效,需要手动进行重启,一是太麻烦了,二是效率太低,本人就想jenkins能不能调用shell脚本来帮我实现重启tomcat,实现自动重启。结果是可以的,以下是我的操作

从网站上下载代码,http://sourceforge.net/projects/sshpass/ 下载sshpass 并安装

tar -zxvf sshpass-1.05.tar.gz

cd sshpass-1.05

./configure

make && make install

之后我们就准备一个shell脚本 restart_tomcat.sh

我们放在把这个shell脚本放在和jenkins 在一台机器上 /root 目录下

#!/bin/bash
export JAVA_HOME=/usr/local/jdk1.6
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
echo "======begin stop the tomcat======"
ps -ef | grep tomcat_vip2/ | grep -v grep | awk '{print $2}'  | sed -e "s/^/kill -9 /g" | sh -
echo "======begin delete /usr/apps/vip2/ROOT======"
rm -rf /usr/apps/vip2/ROOT
echo "======begin starting the tomcat======"
/usr/local/tomcat_vip2/bin/startup.sh
echo "======end start the tomcat successed======"

之后我在jenkins的job配置如下:

 

Command : sshpass -p pasword ssh root@IP 'bash -x -s' < /root/restart_tomcat.sh

保存即可,构建如下:

至此成功结束。

© 著作权归作者所有

子群
粉丝 8
博文 31
码字总数 36163
作品 0
深圳
程序员
私信 提问
Jenkins Publish over ssh部署(学习笔记十四)

Jenkins远程部署,一开始没有任何头绪,想了很多方案. 因为两台机器都是windows系统,所以想到publish over cifs, 但是这个网上资料太少,貌似只能内网使用。又想到了Jenkins 分布式构建,但...

sktj
2018/05/11
0
0
jekins自动化部署(linux测试环境和生产环境)

实施背景 我们是做产品研发的,产品研发的迭代周期短,发布频繁。大多数公司都采用了持续集成的方式。然而创业型公司起步阶段根本就没有时间去做这些事情。只有后面再去补这些坑,我现在就是...

pxk
2017/10/18
2.2K
3
Jenkins环境搭建总结

Jenkins是一个用Java编写的开源的持续集成(CI)工具,可持续、自动地构建/测试软件项目,监控一些定时执行的任务。具有开源,支持多平台和插件扩展,安装简单,界面化管理等特点。 一、Jen...

张斌_青岛
2017/04/24
0
0
jenkins 入门教程

jenkins是一个广泛用于持续构建的可视化web工具,持续构建说得更直白点,就是各种项目的"自动化"编译、打包、分发部署。jenkins可以很好的支持各种语言(比如:java, c#, php等)的项目构建,...

vshcxl
2016/06/27
419
0
使用jenkins进行项目的自动构建部署

jenkins 简介 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:持续的软件版本发布/测试项目和监控外部调用执行的工作。 官网地址地址: https://jenkins.io 下...

神棍先生
2018/12/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Replugin借助“UI进程”来快速释放Dex

public static boolean preload(PluginInfo pi) { if (pi == null) { return false; } // 借助“UI进程”来快速释放Dex(见PluginFastInstallProviderProxy的说明) return PluginFastInsta......

Gemini-Lin
今天
4
0
Hibernate 5 的模块/包(modules/artifacts)

Hibernate 的功能被拆分成一系列的模块/包(modules/artifacts),其目的是为了对依赖进行独立(模块化)。 模块名称 说明 hibernate-core 这个是 Hibernate 的主要(main (core))模块。定义...

honeymoose
今天
4
0
CSS--属性

一、溢出 当内容多,元素区域小的时候,就会产生溢出效果,默认是纵向溢出 横向溢出:在内容和容器之间再套一层容器,并且内部容器要比外部容器宽 属性:overflow/overflow-x/overflow-y 取值...

wytao1995
今天
4
0
精华帖

第一章 jQuery简介 jQuery是一个JavaScript库 jQuery具备简洁的语法和跨平台的兼容性 简化了JavaScript的操作。 在页面中引入jQuery jQuery是一个JavaScript脚本库,不需要特别的安装,只需要...

流川偑
今天
7
0
语音对话英语翻译在线翻译成中文哪个方法好用

想要进行将中文翻译成英文,或者将英文翻译成中文的操作,其实有一个非常简单的工具就能够帮助完成将语音进行翻译转换的软件。 在应用市场或者百度手机助手等各大应用渠道里面就能够找到一款...

401恶户
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部