性能自动化部署工程:Jenkins部署Java工程,WEB工程

目录

1. Jenkins部署Java工程说明

2. Jenkins中设置远程连接Linux的账户

3. Jenkins中,对应Job的配置说明

4. Jenkins部署WEB工程


1. Jenkins部署Java工程说明

(1)可以用Jenkins的中一个job对一个Maven项目下的多个工程文件夹进行管理和操作:可以在一个job中实现编译,打包,部署。而不需要建立4个job。

(2)Java的Maven工程结构构建顺序是:

-> parent (使用mvn install 生成对pom的引用)

->common, common-core(使用命令 mvn install 生成对应的jar包)

->具体工程(使用命令 mvn clean package 生成对应的war包)

(3)在Jenkins上通过新建job,实现自动化构建和部署java工程到linux机器上。

安装好Linux后,需要关闭系统的防火墙。

然后安装tomcat和jdk,并配置好环境变量。

安装好tomcat后,需要对tomcat的配置文件进行修改,以符合部署系统的要求。

之后再启动tomcat, 为后续的部署系统做准备。

(4)为了便于Jenkins的部署和管理,需要统一命名tomcat目录名称和工程名称。

并根据部署的环境要求,如何配置哪个工程需要部署到哪台机器的tomcat中。

根据需求修改tomcat的conf目录下的文件: server.xml, tomcat-user.xml。

其中修改server.xml的3个地方port的值,各个tomcat中的port值需要唯一且未被系统占用。

如果所有的Java工程是部署到不同的机器上,则需要在Jenkins上配置连接到不同机器的ssh用户。

如果所有的Java工程都部署到一台机器上,则只需配置1个ssh用户。

2. Jenkins中设置远程连接Linux的账户

(1)将文件中的sh脚本放到对应工程机器的/usr/local/src目录下。比如:test_project_xxx.sh

即:需要将该脚本上传到部署工程机器的/usr/local/src目录下,其他脚本同理。

(2)在Jenkins的系统管理->系统配置->Publish over SSH中,做相应的设置。

注意,要先确保已经安装了Publish over SSh插件。

具体配置信息如下。 

 

 

 

 

3. Jenkins中,对应Job的配置说明

(1) 在job的构建后步骤中,添加如下选项,以及配置内容

 

选项解析:

Transfer Set Source files:Jenkins服务器上war包的路径和包名

Remove prefix:Jenkins服务器上war包的路径

Remote directory:war包上传到被部署的机器上所存放的路径

Exec command:要执行的shell脚本命令,以shell文件的形式被调用

示例:

Transfer Set Source files: /test_project/admin/target/*.war

Remove prefix:  /test_project/admin/target/

Remote directory: /test_project

Exec command: bash /data/local/test_project/test_project_admin.sh  //自动打包部署的shell脚本

自动化部署脚本参考

#!/bin/bash

set -x

source /etc/profile

id=`ps -ef | grep java | grep tomcat_test_project_admin | awk '{print $2}'`

............... (稍后补)

注意:

如果在调用linux上的shell脚本时,shell脚本没有错误,但是在调用时发生了错误,可通过dos2unix将shell转换后,再执行。

执行脚本的步骤:

先停掉tomcat服务,再删除tomcat中的webapps目录下的应用文件夹和应用war包,赋值要部署的新war包到webapps目录下,重新启动tomcat服务。

(2)在系统管理->系统配置->Publish over SSH中,新增SSH Servers。

其中 Remote Directory的配置为:test_project。

该目录会合并上面的额目录,最后war包会放到/data/local/test_project下。

4. Jenkins部署WEB工程

(1)第一种方法

 

 

 

将该项目部署到对应的web容器中,比如部署到tomcat容器中。

(2)第二种方法

 

(3)执行的shell脚本参考:scp-admin.sh脚本内容如下,放在/home/test目录下

#!/bin/bash

projectFile=`ls /usr/local/workspace/test_project/admin/target/*.war`

if.........................

(稍后补) 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值