本節(jié)中,我將通過詳細(xì)的描述并配合截圖,從購(gòu)買服務(wù)器開始,教大家使用 Gitee Go 持續(xù)集成部署 Node 項(xiàng)目。
大家可以舉一反三,結(jié)合 Gitee Go 服務(wù)進(jìn)行更多的自動(dòng)化任務(wù)。
大概查了下,目前已經(jīng)有很優(yōu)秀的相關(guān)教程了,寫的也很詳細(xì),但是,要么時(shí)間太久遠(yuǎn),要么圖片示例還能再完善下。
解釋
Gitee Go 是 Gitee 全新推出的一款 CI/CD 工具,提供持續(xù)集成、持續(xù)交付(部署)能力,幫助企業(yè)不斷提升應(yīng)用交付的質(zhì)量和效率。通過構(gòu)建自動(dòng)化、測(cè)試自動(dòng)化、部署自動(dòng)化、運(yùn)維自動(dòng)化,完成從代碼提交到應(yīng)用交付的自動(dòng)化。
簡(jiǎn)單說,就是一個(gè)自動(dòng)打包并部署到服務(wù)器中的工具
解決難點(diǎn)
下面列出了常用方法和使用 Gitee Go 的步驟

可以看到,Gitee Go 幫我們解決了很多需要重復(fù)勞動(dòng)的部分,例如打包和文件上傳等部分。
而且,如果您的業(yè)務(wù)更加復(fù)雜,還能集成測(cè)試和掃描,更進(jìn)一步的降低項(xiàng)目部署難度。
配置好 Gitee Go 之后,只需提交代碼, Gitee Go 就會(huì)自動(dòng)幫你完成一系列的部署前準(zhǔn)備工作,并自動(dòng)部署到服務(wù)器上,讓你有更多的時(shí)間來看我寫的教程。
大概介紹
您可以參考我列出的環(huán)境,按照大概步驟,自己重現(xiàn)一遍。
限于篇幅原因,我希望您已有以下能力
- 會(huì)購(gòu)買阿里云服務(wù)器
- 會(huì)使用 Node 構(gòu)建項(xiàng)目,已經(jīng)會(huì)打包部署等操作
- 會(huì)使用 Gitee 進(jìn)行代碼的上傳和管理
我們將通過以下幾個(gè)步驟來幫助您使用 Gitee Go
- 購(gòu)買服務(wù)器
- 準(zhǔn)備授權(quán)信息
- 準(zhǔn)備流水線
準(zhǔn)備服務(wù)器和授權(quán)密鑰對(duì)
為了方便演示,我購(gòu)買的是最便宜的阿里云的 ECS 服務(wù)器( Gitee Go 僅支持阿里云的 ECS 服務(wù)器),配置如下,可供大家參考(該省省,該花花)

注意這里的地域信息,我們選的是深圳,稍后會(huì)用到此信息。
接下來,我們準(zhǔn)備密鑰對(duì),點(diǎn)擊右上角頭像,選擇 AccessKey 管理菜單

選擇子用戶

選擇創(chuàng)建用戶

按如下信息配置,記得勾選“ OpenAPI 調(diào)用訪問”

點(diǎn)擊確定按鈕后,有如下信息,右側(cè)的就是我們后續(xù)用到的秘鑰對(duì),只會(huì)出現(xiàn)這一次,請(qǐng)您保存收好。
保存好秘鑰對(duì)后,點(diǎn)擊左側(cè)藍(lán)色鏈接,我們來進(jìn)行授權(quán)
此服務(wù)器在寫完教程后已刪除,諸位不用嘗試截圖中的秘鑰了。

我們需要用到 ECS 相關(guān)權(quán)限,按下圖所示,授權(quán) ECS 權(quán)限,點(diǎn)擊確定即可。
當(dāng)然,為了項(xiàng)目的安全,您可以進(jìn)一步的根據(jù)自己的實(shí)際需求來進(jìn)行授權(quán)。

致此,我們已經(jīng)準(zhǔn)備好了密鑰對(duì),并完成了對(duì)子賬戶的授權(quán)操作。
準(zhǔn)備Gitee Go 憑證管理
我們來到 Gitee 平臺(tái),找一個(gè)自己準(zhǔn)備部署的倉(cāng)庫(kù),點(diǎn)擊流水線,開通 Gitee Go ,開通是完全免費(fèi)的,每個(gè)月有1000分鐘的免費(fèi)額度,對(duì)于我們個(gè)人來說是妥妥夠用的。

點(diǎn)擊 Gitee 右上角的頭像,點(diǎn)擊設(shè)置菜單,在“流水線 Gitee go”菜單下,選擇“憑證管理”,點(diǎn)擊右上角的“新建憑證”,選擇阿里云,點(diǎn)擊下一步,根據(jù)提示填寫相關(guān)信息。
其中的秘鑰信息,是我們?cè)谏弦还?jié)準(zhǔn)備好的,寫入即可。
關(guān)于地域 ID ,可在提示鏈接中,找到對(duì)應(yīng)城市(深圳)的 ID ,填進(jìn)去即可。
此處配置信息可向下滑動(dòng),有進(jìn)一步的配置信息可填寫

準(zhǔn)備Gitee Go 主機(jī)管理
在“流水線 Gitee go”菜單下,選擇“主機(jī)管理”,選擇右上角“新建主機(jī)組”,選擇阿里云,按要求填寫信息,并選擇之前準(zhǔn)備好的憑證

點(diǎn)擊下一步后,點(diǎn)擊安裝,安裝完成后,即可展示您添加的阿里云 ECS 信息了

截止目前為止,準(zhǔn)備工作完成了,接下來開始配置流水線
配置流水線
在您需要部署的倉(cāng)庫(kù)中,選擇“流水線”,點(diǎn)擊右上角“新建流水線”
基本配置
在基本配置中,“流水線唯一標(biāo)識(shí)”是需要保持唯一的,“流水線名稱”可重復(fù),如下圖所示

觸發(fā)事件
此處控制流水線觸發(fā)條件,一旦滿足指定條件,流水線就會(huì)自動(dòng)進(jìn)行一系列操作,
如下圖所示,這里的事件監(jiān)聽選擇“ Push 事件”,勾選分支匹配,觸發(fā)方式選擇自動(dòng)觸發(fā)。
這樣,只要我們提交代碼,就會(huì)觸發(fā)流水線自動(dòng)構(gòu)建了

任務(wù)編排
這一步是最難的一步,但我們理清步驟,也會(huì)很容易實(shí)現(xiàn)。
我們的流水線要做以下幾件事
- 構(gòu)建項(xiàng)目
- 打包
- 上傳打包資源
- 部署到服務(wù)器
很熟悉,對(duì)不對(duì),
我們點(diǎn)擊加號(hào),名稱改為“構(gòu)建”,點(diǎn)擊“新的任務(wù)”,選擇構(gòu)建列表中的“ Node js 構(gòu)建”,點(diǎn)擊右側(cè)的+號(hào)添加,版本號(hào)選擇最新的“17.8.0”

我們點(diǎn)擊右側(cè)的黃色+號(hào),添加新的階段,命名為“發(fā)布”,點(diǎn)擊下方“新的任務(wù)”,在發(fā)布菜單中選擇“發(fā)布”,其他信息默認(rèn)即可
繼續(xù)創(chuàng)建新階段,命名為“部署”,點(diǎn)擊下方“新的任務(wù)”,在部署菜單中選擇“主機(jī)部署”,在執(zhí)行主機(jī)組部分,選擇我們之前添加的主機(jī)資源

配置項(xiàng)最下方有“部署腳本”,
我們需要在這里,將我們打包好的項(xiàng)目文件放到我們需要的位置。
這次的演示中,我需要放到服務(wù)器的以下位置
/www/wwwroot/test.sofile.cn
點(diǎn)擊右側(cè)的全屏按鈕

帶#
的是注釋,我們可以看到這樣的內(nèi)容
# 使用場(chǎng)景:先將制品包解壓縮到指定目錄中,再執(zhí)行啟動(dòng)腳本deploy.sh,腳本示例地址:https://gitee.com/gitee-go/spring-boot-maven-deploy-case/blob/master/deploy.sh
# mkdir -p /home/admin/app
# tar zxvf ~/gitee_go/deploy/output.tar.gz -C /home/admin/app
# sh /home/admin/app/deploy.sh restart
我們需要其中的這一段
tar zxvf ~/gitee_go/deploy/output.tar.gz -C /home/admin/app
將后面的地址改為自己需要的地址即可,類似這樣
tar zxvf ~/gitee_go/deploy/output.tar.gz -C /www/wwwroot/test.sofile.cn
echo 'Hello Gitee Go!'
第一條是將打包好的項(xiàng)目文件解壓到指定目錄,第二條是輸出一個(gè)信息。
總體流程如下

至此,流水線配置完畢,點(diǎn)擊右上角X符號(hào)關(guān)閉窗口,點(diǎn)擊保存按鈕,確認(rèn)新建文件信息。

這會(huì)將我們可視化配置的流水線信息通過 yml 文件格式保存在項(xiàng)目的.workflow
文件夾中。
這里的文件名不要?jiǎng)樱峤恍畔⒕褪俏募兏f明
使用
所有準(zhǔn)備工作完畢,現(xiàn)在,我們只要在本地將準(zhǔn)備好的代碼提交到 Gitee 上,機(jī)會(huì)自動(dòng)觸發(fā)流水線任務(wù),將打包好的文件放置中服務(wù)器上的指定位置了。
全程無需其他操作,只需提交代碼,剩下的都自動(dòng)化了
管理打包文件
如果你需要進(jìn)一步的管理每次打包后的文件,可在發(fā)布菜單中添加發(fā)布任務(wù),可在下圖中的發(fā)布記錄菜單中管理您的打包文件

排查錯(cuò)誤
為了寫這篇教程,前后修改了很多次配置文件,為了方便排查錯(cuò)誤,您可以在“構(gòu)建歷史”菜單中,選擇自己要查看的構(gòu)建任務(wù),選擇一個(gè)階段,獲取相關(guān)詳細(xì)信息,

更可以點(diǎn)擊其過程,了解更詳細(xì)的運(yùn)行信息

方便您排查錯(cuò)誤。
最新文章
- 后續(xù)文章不定期撰寫中,點(diǎn)個(gè)關(guān)注,獲取平臺(tái)最新文章推送。
- 技術(shù)有限,還望諸位協(xié)助勘誤,于評(píng)論區(qū)指出,
- 常一文多發(fā),最新勘定和增補(bǔ)文章于下方鏈接給出
- http://www.kartiktrivedi.com/277432.html