publish over ssh 实现 Jenkins 远程部署 / jenkins 远程执行shell 一键远程发布 tomcat / jenkins分别发布多个项目到多个远程主机

1. 以下是本地Jenkins生成war包直接发布本机。参照了(jenkins 远程执行shell 一键远程发布 tomcat)


BUILD_ID=DONTKILLME 

(加这个原因是因为没加之前用command startup tomcat一直启动失败而shutdown却是成功的   原因是因为jenkins启动后的进程会被kill掉所以要加这句,才能启动成功)

同事给的一段话:关闭tomcat

"kill -9 `ps -ef|grep " + appRelationship.getPath() + "/conf/logging.properties"+ "|awk '{print $2}'`"

=======================================================================================================================

2. 以下是本地Jenkins生成war包直接发布到远程主机。参照了(jenkins分别发布多个项目到多个远程主机)

 2.1系统配置Publish over SSH


  2.2以下是项目的构建后操作



======================================================================================

以下是网上参照的博客文章:

publish over ssh 实现 Jenkins 远程部署

http://blog.csdn.net/flyingshuai/article/details/72898665

Jenkins远程部署,一开始没有任何头绪,想了很多方案. 因为两台机器都是windows系统,所以想到publish over cifs, 但是这个网上资料太少,貌似只能内网使用。又想到了Jenkins 分布式构建,但是Jenkins构建的代码和产物最后自动拷贝到主节点。而远程机器其实是客户方的机器,所以这个分布式构建并不适用。最后还是选定publish over ssh来实现远程部署。
请注意:在进行远程部署操作前,先要确保客户机能ssh 登录到远程机器。如果不知道SSH怎么登陆,请参考http://blog.csdn.net/flyingshuai/article/details/72897692
1. 安装publish over ssh 插件,安装很简单,在此不表。
2. 在Jenkins系统设置里找到Publish over SSH模块
3. 用户名/密码方式登录的,系统设置里设置如下:
这里写图片描述

(下面的这张图是我自己的配置)



 
4. 如果是证书登录的,系统设置里设置如下:
这里写图片描述
5. Job设置,点击增加构建后操作步骤,选择send build artifacts over ssh, 设置如下:
这里写图片描述
6. 文件上传到远程服务器后,还有一些后续操作,比如,替换数据库配置文件。可以把bat命令写到一个批处理文件中,存到服务器上。Exec command填写批处理文件的绝对路径。如上图所示。

关于bat脚本:
如果每次都需要替换同样的文件,用copy /y 是无条件覆盖,不会询问。而xcopy可以实现批量拷贝文件和文件夹。如果文件较多可用此命令
注意脚本运行失败,构建也会显示蓝色成功图标,所以一定要打开控制台输出,看是否真的成功。

===============================================================================


jenkins 远程执行shell 一键部署

下载jenkins

Publish over SSH插件

在系统配置中创建

这里写图片描述

点高级可以保存密码

新建jobs

这里写图片描述

send build artifacts over ssh 插件

这里写图片描述

Exec command

export JAVA_HOME=/usr/local/jdk
cd /opt/apache-tomcat-7.0.63/bin/
./deploy.sh

deploy.sh

#author:sunlihuo
#desc:在jenkins构建完成后,ROOT.war已经是最新的

#重启tomcat
bash /opt/apache-tomcat-7.0.63/bin/catalina.sh stop

#确保进程正常结束
sleep 2 #具体时间就看你得webapp在调用shutdown.sh后多久后处于僵死状态
ps -ef | grep ‘tomcat’ | grep -v grep| awk ‘{print $2}’ | xargs kill -9

#删除webapps下的weixin工程
rm -rf /opt/apache-tomcat-7.0.63/webapps/ROOT

#备份
#mv /opt/apache-tomcat-7.0.63/webapps/ROOT.war /opt/apache-tomcat-7.0.63/bak/ROOT.war.date +%Y%m%d%H%M%S.bak

#重启并打印日志
nohup bash /opt/apache-tomcat-7.0.63/bin/catalina.sh start & tailf /opt/apache-tomcat-7.0.63/logs/catalina.out


===================================================================================================================

jenkins分别发布多个项目到多个远程主机

(http://www.cnblogs.com/horizonli/p/5336098.html)

/**

* lihaibo

* 文章内容都是根据自己工作情况实践得出。

* 版权声明:本博客欢迎转发,但请保留原作者信息 ! 本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您的赞助.

*/

一、配置远程主机

     点击“系统管理”---“系统设置”----找到“Publish over SSH”组件

    

       组件中有个SSH Servers模块

       点击“增加”

      

    点击增加后,

    

配置“高级”


------------------------------------------------------------------------------------------------------

二、配置需要部署的项目

      请点击参考查看:jenkins(五)---jenkins添加项目

      查看过程中最重要的一步是选择你要部署到远程主机的名字:如下图

  

   

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Jenkins是一个流行的自动化构建工具,可以通过Publish Over SSH插件方便地部署代码到远程服务器。通过设置该插件,我们可以连接到远程服务器,并将构建后的文件和脚本发送到该服务器上。在Windows环境下,在Jenkins设置Publish Over SSH插件时需要先安装PuTTY。 在Jenkins配置Publish Over SSH插件的过程如下: 1. 首先需要在Jenkins服务器和目标服务器之间建立SSH连接,确保Jenkins服务器可以通过SSH连接到目标服务器。 2. 在Jenkins安装Publish Over SSH插件。 3. 在Jenkins管理员界面的Manage Jenkins - Configure System - Publish over SSH点击新增远程服务器。 4. 在远程服务器配置页面需要输入目标服务器的SSH连接信息,包括远程服务器的IP地址、SSH端口号、登录用户,以及登录远程服务器所需的RSA私钥或用户名和密码。 5. 测试SSH连接是否可用,若成功则可以保存配置。 6. 在任务的构建步骤可以选择Publish Over SSH插件,并设置构建后要部署的文件和脚本。 7. 如果需要执行远程脚本,则可以在Publish Over SSH插件设置一个“远程命令”步骤,执行远程服务器上的Shell脚本或Windows批处理脚本。 在Windows环境下,通过Publish Over SSH插件执行远程bat脚本的步骤如下: 1. 在Jenkins任务的构建步骤选择Publish Over SSH插件。 2. 在Publish Over SSH插件选择“Advanced”选项卡,并在“Exec command”输入框输入要执行的bat脚本路径和名称。 3. 点击保存并运行构建即可。Jenkins将会连接到远程服务器上,执行指定的bat脚本。 总的来说,使用JenkinsPublish Over SSH插件可以方便地在Windows环境下向远程服务器部署代码和脚本,并执行远程服务器上的bat脚本

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值