亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

.NET微服務(wù)架構(gòu)CI/CD鏡像自動(dòng)分發(fā)

 更新時(shí)間:2022年01月07日 11:10:10   作者:老馬-Max  
這篇文章介紹了.NET微服務(wù)架構(gòu)CI/CD實(shí)現(xiàn)鏡像自動(dòng)分發(fā)的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

如何通過(guò)Jenkins完成鏡像分發(fā)?基本做法是:打包鏡像→上傳鏡像到倉(cāng)庫(kù)→腳本分發(fā)。鏡像倉(cāng)庫(kù)也有很多,比如docker hub、Harbor等,今天這一篇講一下基于阿里云鏡像倉(cāng)庫(kù)的操作。

首先,準(zhǔn)備一個(gè)阿里云鏡像倉(cāng)庫(kù),個(gè)人版是免費(fèi)的。

然后下載這個(gè)插件:

Publish Over SSH

這個(gè)插件主要用來(lái)遠(yuǎn)程登錄服務(wù)器并執(zhí)行腳本。

插件安裝完畢后,系統(tǒng)設(shè)置會(huì)多出這一項(xiàng),戳圖里這個(gè)按鈕:

然后,把服務(wù)器的ip、賬戶、密碼填進(jìn)去:

配置好以后,最好點(diǎn)測(cè)試按鈕試一下,如果沒(méi)問(wèn)題會(huì)輸出“Success”

接下來(lái)找到之前的工作流,新增構(gòu)建步驟:

選中剛才新增的server,編寫(xiě)腳本進(jìn)行上傳:

echo "==========登錄倉(cāng)庫(kù)=========="
docker login --username=阿里云賬戶 --password=阿里云倉(cāng)庫(kù)密碼 registry.cn-shenzhen.aliyuncs.com

echo "==========上傳鏡像=========="
docker tag mydotnet6 registry.cn-shenzhen.aliyuncs.com/命名空間/倉(cāng)庫(kù)名:latest
docker push registry.cn-shenzhen.aliyuncs.com/命名空間/倉(cāng)庫(kù)名:latest

echo "==========清理鏡像=========="
docker rmi -f mydotnet6
docker rmi registry.cn-shenzhen.aliyuncs.com/命名空間/倉(cāng)庫(kù)名:latest

手動(dòng)構(gòu)建一下,去看阿里云倉(cāng)庫(kù):

鏡像自動(dòng)上傳,Get~

接下來(lái)要從倉(cāng)庫(kù)拉取鏡像并運(yùn)行,該怎么做呢?想必聰明的你已經(jīng)知道了——沒(méi)錯(cuò),還是同樣的流程:添加SSH Server→添加構(gòu)建步驟→編寫(xiě)Shell。添加并選擇新的SSH Server,執(zhí)行這些shell:

echo "==========停止進(jìn)程=========="
docker kill -s KILL mydotnet6

echo "==========刪除容器=========="
docker rm mydotnet6 

echo "==========刪除鏡像=========="
docker rmi -f registry.cn-shenzhen.aliyuncs.com/命名空間/倉(cāng)庫(kù)名:latest

echo "==========登錄倉(cāng)庫(kù)=========="
docker login --username=阿里云賬戶 --password=阿里云倉(cāng)庫(kù)密碼 registry.cn-shenzhen.aliyuncs.com

echo "==========拉取新鏡像=========="
docker pull registry.cn-shenzhen.aliyuncs.com/命名空間/倉(cāng)庫(kù)名:latest

echo "==========開(kāi)始運(yùn)行=========="
docker run -itd -p 5000:80 --restart always --name=mydotnet6 registry.cn-shenzhen.aliyuncs.com/命名空間/倉(cāng)庫(kù)名:latest

然后再次手動(dòng)觸發(fā)構(gòu)建,去server02查看容器:

訪問(wèn)一下:

訪問(wèn)正常。手動(dòng)構(gòu)建沒(méi)問(wèn)題,那么自動(dòng)構(gòu)建呢?打開(kāi)項(xiàng)目新增一個(gè)NB方法:

Git提交,等待一段時(shí)間后直接刷新swagger:

只需要Git上傳代碼就能完成這些,爽不?

自動(dòng)部署Get~

小結(jié)

前文:

.NET微服務(wù)架構(gòu)CI/CD自動(dòng)打包鏡像

.NET微服務(wù)架構(gòu)CI/CD自動(dòng)構(gòu)建Jenkins+Gitee

看完這三篇文章,你應(yīng)該可以成功搭建CICD環(huán)境了,然后你會(huì)發(fā)現(xiàn)它并不難。不過(guò)如果你想在生產(chǎn)環(huán)境應(yīng)用它,可能會(huì)有些坑。當(dāng)然,我已經(jīng)踩過(guò)了,而且有些坑還給我的公司造成了損失。既然說(shuō)到這里,當(dāng)然不會(huì)看著同學(xué)們踩坑,所以我還會(huì)寫(xiě)個(gè)防踩坑指南,下一篇見(jiàn)。

到此這篇關(guān)于.NET微服務(wù)架構(gòu)CI/CD鏡像自動(dòng)分發(fā)的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論