window中搭建jenkins_Jenkins自动化部署(Windows服务器)

Jenkins自动化部署(Windows服务器)

背景:

一直部署SSM项目,每次都是 在tomcat的webapps目录下,将项目压缩成zip格式压缩包,拷贝的windows服务器的tomcat的webapps目录下,解压缩,覆盖,启动tomcat。每次都是这样,很苦逼。最近不是很忙,用一天时间搞了一下自动部署,只是将整个流程自动化了。

使用工具:Jenkins + Maven + Git + freesshd(Windows搭建ssh和sftp工具) + Tomcat

首先介绍一下思路:

1.本地git 获取最新的代码

2.覆盖必要的文件(如:spring-shiro.xml 因为我的开发环境使用的shiro文件与生成环境使用的shiro文件不一致。)

3.本地执行maven命令打成war包

4.通过sftp相关工具 将war包上传到服务器

5.管理服务器上的Tomcat,备份之前的项目(可以根据日期),覆盖新的war包

6.tomcat启动

其实这不是最好的方法,大家也都知道,博客大佬们都是 在服务器上获取最新代码,打包,测试,部署。不需要通过本地将war包上传到服务器。后面在尝试这种方式。

接下来回归正题:

jenkins的下载和安装。

下载的话,可以选择下载war包或者windows的msi格式。下载msi格式可以省去很多麻烦的步骤。而且自动会作为windows服务存在。

下载war的话,就需要jenkins.war 放到tomcat的webapps目录下。

msi安装的话,基本上都是傻乖式安装,一路next就行。

jenkins.war 形式直接启动tomcat 就行。

接下来第一次访问,需要安装一些插件,直接选择默认的即可,以后需要插件可以在单独安装。

等待插件安装完成

设置admin账户

freesshd 安装

安装Window提供的SSH服务的软件,直接看这个链接就OK了

jingyan.baidu.com/article/f7f…

需要特殊注意的一个地方,点击 user 添加用 时候 ,SFTP这一项必须要打上勾,因为我们 需要 通过SFTP 将本地 文件上传到 windows 服务器。

jenkins 插件 Publich overSSH

我们通过Public overSSh 插件 将本地window 和 windows服务器连接起来。

1.首先是安装插件 ,选择 系统管理 -> 插件管理

在可选插件 中搜索,找到,安装即可,安装完,重新启动jenkins

2.然后再系统管理下 -》 找到 系统设置,拉到最下面,配置 Publish over SSH

如果点击Test 失败,可能原因 SFTP 没有连接通,这个一定要打开。

搭建

在jenkins 创建一个job,

2.点击 advanced , 配置工作空间

这里点击构建 ,执行windows批处理命令

填写window命令

f: 进入F盘

cd \ 进入F盘根目录

cd software\lowrisk_product\CMS-master 进入该文件夹

copy CMS.properties F:\software\lowrisk_product\CMS-master\CMS\build\dev\resources\properties 覆盖文件

copy spring-context-shiro.xml F:\software\lowrisk_product\CMS-master\CMS\src\main\resources\spring 覆盖文件

cd CMS 进行项目文件夹

mvn clean install package 打包复制代码

这里,没有显示从git获取最近代码,实际上这个操作,我通过ide完成了。我配置git的每次都把之前删除了,然后在clone,这样很慢,所以没用。

3..在项目中的构建后操作,增加构建后操作步骤,选择send built artifact over SSH选项

远程服务器的目录是指的:

远程服务器上的脚本:

@echo off

set JAVA_HOME=E:\app\jre\jre8

E:

cd \

cd app\appserver\apache-tomcat-7.0.82\bin

::关闭tomcat

call shutdown.bat

cd ..

cd ..

::

set SourceFile=E:\app\appserver\apache-tomcat-7.0.82\webapps\CMS.war

if exist %SourceFile% (

:: 备份文件,并删除

cd cms_version

::删除当前文件夹下所有文件

rd /s/q %date:~0,4%%date:~5,2%%date:~8,2%

:: 创建日期文件夹

mkdir %date:~0,4%%date:~5,2%%date:~8,2%

::备份文件

copy E:\app\appserver\apache-tomcat-7.0.82\webapps\CMS.war %date:~0,4%%date:~5,2%%date:~8,2%\CMS.war

::删除旧文件

del E:\app\appserver\apache-tomcat-7.0.82\webapps\CMS.war

::复制新文件

copy C:\Users\Administrator\app\CMS\CMS.war E:\app\appserver\apache-tomcat-7.0.82\webapps

) else (

::复制新文件

copy C:\Users\Administrator\app\CMS\CMS.war E:\app\appserver\apache-tomcat-7.0.82\webapps

)

:: 删除文件

del C:\Users\Administrator\app\CMS\CMS.war

:: 休眠40秒

ping 127.0.0.1 -n 40 >nul

E:

cd \

cd app\appserver\apache-tomcat-7.0.82\bin

:: 启动tomcat

call startup.bat复制代码

4.然后在通知上可以 选择 钉钉通知器配置

点击完成,保存,。点击构建即可。

你可能感兴趣的:(window中搭建jenkins_Jenkins自动化部署(Windows服务器))