windows使用jenkins 搭建 .net 自動發(fā)布IIS站點平臺

前言

  什么是持續(xù)集成呢?Continuous integration(CI)。持續(xù)集成是一種軟件開發(fā)實踐,即團隊開發(fā)成員經(jīng)常集成他們的工作,通常每個成員至少集成一次,也就意味著每天可能會發(fā)生多次集成。每次集成都通過自動化的構(gòu)建(包括編譯,發(fā)布,自動化測試)來驗證,從而盡快地發(fā)現(xiàn)集成錯誤。許多團隊發(fā)現(xiàn)這個過程可以大大減少集成的問題,讓團隊能夠更快的開發(fā)內(nèi)聚的軟件。

  如果沒有持續(xù)集成會有哪一些問題呢?模塊項目接口部署不及時,接口不通。每次需要手動打包最新的代碼進(jìn)行部署、發(fā)布代碼、線上部署都是純手工。容易出錯。浪費時間。

  現(xiàn)在加上持續(xù)集成解決的問題呢?項目構(gòu)建自動化、集成的詳細(xì)信息及歷史記錄的記錄、使用統(tǒng)一的管理、固定規(guī)定的部署流程、每天至少集成一次。

?環(huán)境:

? ? ?jenkins服務(wù)器:win10系統(tǒng)? ?(安裝jenkins、git、Visual Studio 2017)

? ? ?IIS目標(biāo)服務(wù)器:winserver2016系統(tǒng)(安裝IIS 、FTP)

安裝

  這里我采用的是使用Tomcat配合jenkins一起使用的來達(dá)成持續(xù)集成的目的。

  一、安裝Tomcat

必須有jdk,這里用的是jdk1.8

?1、從官網(wǎng)下載Tomcat。下載地址:https://tomcat.apache.org

apache-tomcat-8.5.49-windows-x64.zip

下載后解壓到C盤根目錄并重命名。

C:\apache-tomcat

2、配置環(huán)境變量

在classpath這個變量中加入C:\apache-tomcat\bin;

.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;C:\apache-tomcat\bin;

新建JAVA_HOME變量

C:\Program Files\java\jdk1.8.0_211

3.啟動Tomcat

進(jìn)入Tomcat中bin目錄,雙擊startup.bat

上圖界面代表啟動成功,成功后不要關(guān)閉,否則就關(guān)掉了Tomcat。

測試Tomcat是否啟動成功:

在瀏覽器地址欄輸入http://localhost:8080/

若出現(xiàn)下圖界面,則啟動成功。


二、安裝Visual Studio 2017、Git-2.24.0.2-64-bit

? ? ? 下載并安裝Visual Studio 2017

? ? ? ?下載并安裝Git-2.24.0.2-64-bit?

驗證是否安裝成功,右鍵-“git bash here”

git --version


三、目標(biāo)服務(wù)器上安裝IIS、FTP服務(wù)

?新建一個站點test.com

新建一個FTP站點208ftp










身份驗證選擇基本

授權(quán)選擇指定角色或用戶組(指定可以訪問FTP的賬戶,沒有賬戶請新建)

權(quán)限(讀寫權(quán)限)

完了之后可以連接FTP驗證一下(注意新建防火墻入規(guī)則)

四、安裝Jenkins

一切準(zhǔn)備就緒之后,就開始安裝jenkins了,下載地址:jenkins.io/download/。前往地址下載jenkins的 war包。

jenkins-2.190.3.zip

然后將war包放置在前面安裝的Tomcat的目錄之下(C:\apache-tomcat\webapps)。



然后在瀏覽器中輸入http://localhost:8080/jenkins/。訪問,安裝成功的話就會出現(xiàn)jenkins的界面

這里根據(jù)提示我們找到目錄之下就可以獲取密碼了。接下來會出現(xiàn)插件安裝的一個選擇,新手直接選擇新手入門推薦安裝就好了。


這里有時會出現(xiàn)安裝失敗或者鏈接失敗的情況,多試幾次就好了。一般是網(wǎng)絡(luò)的問題。

創(chuàng)建管理員用戶之后就可以正式開始配置jenkins了。

配置

安裝Publish Over FTP插件

?配置Publish Over FTP



注意remote directory為 “/”?

注意 中文配置為GB2312

?配置完后可以使用“test configuration”測試下FTP 是否連的通


配置git、Visual Studio 2017







新建一個項目 whenchattest



MSBuild Version? :選擇之前配置好的msbuild,就是Visual Studio 2017

MSBuild Build File : 需要編譯的工程文件目錄,我這里是選擇的工程文件里C:\Users\jenkins\.jenkins\workspace\whenchattest\20.APP接口站點測試\PortTestNew\PortTestNew.csproj? ? ? 后綴是.csproj的工程文件

(默認(rèn)Git拉取源碼存放的目錄是C:\Users\jenkins\.jenkins\workspace)

Command Line Arguments : 編譯文件

/t:Rebuild? #重新生成/p:VisualStudioVersion=15.0? #Visual Studio 2017對應(yīng)的是15.0/p:DeployOnBuild=True? ? ? #是否打包/p:Configuration=Release? #生成Release版本/p:OutputPath="C:\Users\jenkins\.jenkins\workspace\whenchattest\20.APP接口站點測試\PortTestNew\bin"? ? #項目輸出位置/p:WebProjectOutputDir="C:\Users\jenkins\.jenkins\workspace\whenchattest\test.whenchat.com"#項目dll輸出位置,發(fā)布的時候就是把生產(chǎn)的這個文件里的內(nèi)容拷貝到IIS站點的目錄

  *注:如果生成以后需要使用ftp進(jìn)行發(fā)布的話,請將項目生成到\Jenkins\workspace\中去。同時路徑中存在空格時,要在路徑上加上雙引號,否則會出先報錯:

MSBUILD : error MSB1008: 只能指定一個項目。


VisualStudioVersion=15.0? 查看版本號? C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\devenv.exe.config




通過ftp發(fā)布

點擊增加構(gòu)建后操作步驟,并選擇下圖紅框內(nèi)的選項。





Source files:表示當(dāng)前上傳的文件位置,該位置默認(rèn)根目錄為“Jenkins\workspace\項目名”文件夾。

Remove prefix:表示上傳時,是否排除忽略某些文件夾。如上圖中,如果該項為空,則在FTP指定位置上傳Build文件夾及其內(nèi)容。

?Remote directory:ftp的目標(biāo)目錄

自此配置構(gòu)架、發(fā)布系統(tǒng)完成



表示構(gòu)建完成,如果構(gòu)建失敗,我們可以現(xiàn)在jenkins服務(wù)器上使用Visual Studio 2017,手動構(gòu)建,看看是什么原因并解決

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。