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

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

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

選擇子用戶

選擇創建用戶

按如下信息配置,記得勾選“ OpenAPI 調用訪問”

點擊確定按鈕后,有如下信息,右側的就是我們后續用到的秘鑰對,只會出現這一次,請您保存收好。
保存好秘鑰對后,點擊左側藍色鏈接,我們來進行授權
此服務器在寫完教程后已刪除,諸位不用嘗試截圖中的秘鑰了。

我們需要用到 ECS 相關權限,按下圖所示,授權 ECS 權限,點擊確定即可。
當然,為了項目的安全,您可以進一步的根據自己的實際需求來進行授權。

致此,我們已經準備好了密鑰對,并完成了對子賬戶的授權操作。
準備Gitee Go 憑證管理
我們來到 Gitee 平臺,找一個自己準備部署的倉庫,點擊流水線,開通 Gitee Go ,開通是完全免費的,每個月有1000分鐘的免費額度,對于我們個人來說是妥妥夠用的。

點擊 Gitee 右上角的頭像,點擊設置菜單,在“流水線 Gitee go”菜單下,選擇“憑證管理”,點擊右上角的“新建憑證”,選擇阿里云,點擊下一步,根據提示填寫相關信息。
其中的秘鑰信息,是我們在上一節準備好的,寫入即可。
關于地域 ID ,可在提示鏈接中,找到對應城市(深圳)的 ID ,填進去即可。
此處配置信息可向下滑動,有進一步的配置信息可填寫

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

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

截止目前為止,準備工作完成了,接下來開始配置流水線
配置流水線
在您需要部署的倉庫中,選擇“流水線”,點擊右上角“新建流水線”
基本配置
在基本配置中,“流水線唯一標識”是需要保持唯一的,“流水線名稱”可重復,如下圖所示

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

任務編排
這一步是最難的一步,但我們理清步驟,也會很容易實現。
我們的流水線要做以下幾件事
- 構建項目
- 打包
- 上傳打包資源
- 部署到服務器
很熟悉,對不對,
我們點擊加號,名稱改為“構建”,點擊“新的任務”,選擇構建列表中的“ Node js 構建”,點擊右側的+號添加,版本號選擇最新的“17.8.0”

我們點擊右側的黃色+號,添加新的階段,命名為“發布”,點擊下方“新的任務”,在發布菜單中選擇“發布”,其他信息默認即可
繼續創建新階段,命名為“部署”,點擊下方“新的任務”,在部署菜單中選擇“主機部署”,在執行主機組部分,選擇我們之前添加的主機資源

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

帶#
的是注釋,我們可以看到這樣的內容
# 使用場景:先將制品包解壓縮到指定目錄中,再執行啟動腳本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!'
第一條是將打包好的項目文件解壓到指定目錄,第二條是輸出一個信息。
總體流程如下

至此,流水線配置完畢,點擊右上角X符號關閉窗口,點擊保存按鈕,確認新建文件信息。

這會將我們可視化配置的流水線信息通過 yml 文件格式保存在項目的.workflow
文件夾中。
這里的文件名不要動,提交信息就是文件變更說明
使用
所有準備工作完畢,現在,我們只要在本地將準備好的代碼提交到 Gitee 上,機會自動觸發流水線任務,將打包好的文件放置中服務器上的指定位置了。
全程無需其他操作,只需提交代碼,剩下的都自動化了
管理打包文件
如果你需要進一步的管理每次打包后的文件,可在發布菜單中添加發布任務,可在下圖中的發布記錄菜單中管理您的打包文件

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

更可以點擊其過程,了解更詳細的運行信息

方便您排查錯誤。
最新文章
- 后續文章不定期撰寫中,點個關注,獲取平臺最新文章推送。
- 技術有限,還望諸位協助勘誤,于評論區指出,
- 常一文多發,最新勘定和增補文章于下方鏈接給出
- http://m.kartiktrivedi.com/277432.html