.NET微服務(wù)架構(gòu)CI/CD自動構(gòu)建Jenkins+Gitee
CI/CD
它的意思是 持續(xù)集成/持續(xù)部署,這也不是新概念。那些八股文就不寫了,說話的方式簡單點(diǎn):如果成功搭建CI/CD環(huán)境,當(dāng)你需要迭代線上程序時,只需通過git提交代碼就可以,其他什么都不用做。是不是很爽?這樣你就擁有了快速迭代的能力,微服務(wù)大環(huán)境下,這也是必要的。
準(zhǔn)備工作
1、準(zhǔn)備一個.NET6項(xiàng)目:

2、準(zhǔn)備一個gitee倉庫
3、準(zhǔn)備一臺服務(wù)器(非必要)
安裝Jenkins
首先在docker中運(yùn)行這段代碼(代碼來自官網(wǎng)):
docker run \ -u root \ --rm \ -d \ -p 8080:8080 \ -p 50000:50000 \ -v jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ jenkinsci/blueocean
沒有提前下載鏡像也沒關(guān)系,因?yàn)樗鼤詣酉螺d。如下:

容器跑起來了,訪問8080:

jenkins首次啟動會進(jìn)入安裝向?qū)?,并且自動生成一個管理員賬戶,但是密碼是輸出到日志里的。因?yàn)槲沂峭ㄟ^docker啟動的,所以要查看容器日志,語句:
docker logs [容器id/name]
密碼在兩行星號中間:

粘貼到剛才的頁面點(diǎn)確認(rèn),進(jìn)入下個頁面:

頁面給出了插件安裝的兩個選項(xiàng):推薦安裝、自定義安裝,隨意選一個即可。
安裝結(jié)束后,進(jìn)入賬戶設(shè)置頁面:

可以跳過并繼續(xù)使用admin賬戶,也可以自定義一個,建議自定義一個好記的。
最后設(shè)置一下地址就可以結(jié)束安裝向?qū)Я耍?/p>

添加并配置Gitee
Jenkins默認(rèn)不支持gitee,需要下載一個gitee插件才可以,找到插件管理搜索gitee并下載即可:

然后進(jìn)入系統(tǒng)設(shè)置,配置gitee:

需要注意這里的證書。點(diǎn)擊添加,選擇“Gitee API token”:

這里的APIV5 token,登錄gitee賬戶,設(shè)置→私人令牌,生成一個新的就好。
添加好以后,選擇證書并點(diǎn)擊測試:

看到成功字樣,保存退出。
新建工作流
接下來,新建一個“Freestyle”任務(wù)。
在“源碼管理”這一頁,選擇Git,輸入你倉庫的地址:

這里會報(bào)錯很正常,因?yàn)闆]有配置賬戶密碼。點(diǎn)擊新增一個證書,種類選賬戶密碼,然后選擇它。正常情況下就像這樣:

然后在下面設(shè)置分支,這一項(xiàng)決定jenkins拉取哪個分支的代碼(如果不寫就是任意分支):

然后就是構(gòu)建觸發(fā)器,選推送代碼到gitee時觸發(fā)(這個url先拷貝出來):

打勾以后,會多出很多選項(xiàng),其他的都不用管,只需要在這里生成一個token就可以:

然后回到gitee倉庫,找到管理→webhooks→新建,填入準(zhǔn)備好的地址和token:

添加成功后看下測試請求的結(jié)果,正常情況下是200:

接下來測試觸發(fā)器是否可以正常工作。構(gòu)建前工作區(qū)是空的:

手動構(gòu)建后:

現(xiàn)在提交修改代碼到gitee,看能否自動構(gòu)建。我就直接用vs自帶工具提交了:

然后轉(zhuǎn)到j(luò)enkins后臺,可以看到多出一個構(gòu)建記錄:

戳進(jìn)去看控制臺輸出:

的確是我剛才提交的修改,自動構(gòu)建成功。
下一步是拉到代碼的同時,根據(jù)代碼中的Dockerfile自動打包成鏡像并且運(yùn)行,下一篇繼續(xù)。
到此這篇關(guān)于.NET微服務(wù)架構(gòu)CI/CD自動構(gòu)建Jenkins+Gitee的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
GridView中checkbox"全選/取消"完美兼容IE和Firefox
GridView中checkbox的的"全選/取消"使用還是比較頻繁的,本文有個不錯的示例完美兼容IE和Firefox,感興趣的朋友可以參考下,希望對大家有所幫助2013-10-10
一步步教你在Asp.net Mvc中使用UEditor編輯器
大家都知道ueditor是百度編輯器,目前使用也比較廣泛,下面這篇文章主要是通過一步步的步驟教大家在Asp.net Mvc中使用UEditor編輯器,需要的朋友可以參考借鑒,下面來一起看看吧。2016-12-12
relaxlife.net發(fā)布一個自己開發(fā)的中文分詞程序
relaxlife.net發(fā)布一個自己開發(fā)的中文分詞程序...2007-03-03
.NET實(shí)現(xiàn)Repeater控件+AspNetPager控件分頁
本文給大家分享的2個示例,演示AspNetPager最基本的功能,幫助您認(rèn)識AspNetPager分頁控件及了解它的工作原理。有需要的小伙伴可以參考下2015-11-11
ASP.NET連接數(shù)據(jù)庫并獲取數(shù)據(jù)方法總結(jié)
這篇文章主要介紹了ASP.NET連接數(shù)據(jù)庫并獲取數(shù)據(jù)方法,結(jié)合實(shí)例分析總結(jié)了ASP.NET連接數(shù)據(jù)庫及獲取數(shù)據(jù)的相關(guān)實(shí)現(xiàn)技巧,并附帶了web.config配置文件的使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2015-11-11
asp.NET中實(shí)現(xiàn)文件的壓縮和解壓(3種方式)
本篇文章主要介紹了asp.NET中實(shí)現(xiàn)文件的壓縮和解壓,這里整理了詳細(xì)的代碼,有需要的小伙伴可以參考下。2016-11-11
.Net Core中使用ref和Span<T>提高程序性能的實(shí)現(xiàn)代碼
這篇文章主要介紹了.Net Core中使用ref和Span<T>提高程序性能的簡單實(shí)現(xiàn)代碼,需要的朋友可以參考下2017-05-05

