一直部署SSM項目,每次都是 在tomcat的webapps目錄下,將項目壓縮成zip格式壓縮包,拷貝的windows服務器的tomcat的webapps目錄下,解壓縮,覆蓋,啓動tomcat。每次都是這樣,很苦逼。最近不是很忙,用一天時間搞了一下自動部署,只是將整個流程自動化了。html
使用工具:Jenkins + Maven + Git + freesshd(Windows搭建ssh和sftp工具) + Tomcatgit
首先介紹一下思路:web
其實這不是最好的方法,你們也都知道,博客大佬們都是 在服務器上獲取最新代碼,打包,測試,部署。不須要經過本地將war包上傳到服務器。後面在嘗試這種方式。spring
接下來回歸正題:apache
jenkins官網地址: jenkins.io/download/windows
下載的話,能夠選擇下載war包或者windows的msi格式。下載msi格式能夠省去不少麻煩的步驟。並且自動會做爲windows服務存在。tomcat
下載war的話,就須要jenkins.war 放到tomcat的webapps目錄下。服務器
msi安裝的話,基本上都是傻乖式安裝,一路next就行。app
jenkins.war 形式直接啓動tomcat 就行。ssh
接下來第一次訪問,須要安裝一些插件,直接選擇默認的便可,之後須要插件能夠在單獨安裝。
等待插件安裝完成
安裝Window提供的SSH服務的軟件,直接看這個連接就OK了 jingyan.baidu.com/article/f7f…
須要特殊注意的一個地方,點擊 user 添加用 時候 ,SFTP這一項必需要打上勾,由於咱們 須要 經過SFTP 將本地 文件上傳到 windows 服務器。
咱們經過Public overSSh 插件 將本地window 和 windows服務器鏈接起來。
1.首先是安裝插件 ,選擇 系統管理 -> 插件管理
在可選插件 中搜索,找到,安裝便可,安裝完,從新啓動jenkins
2.而後再系統管理下 -》 找到 系統設置,拉到最下面,配置 Publish over SSH
若是點擊Test 失敗,可能緣由 SFTP 沒有鏈接通,這個必定要打開。
2.點擊 advanced , 配置工做空間
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.而後在通知上能夠 選擇 釘釘通知器配置
點擊完成,保存,。點擊構建便可。