工作中部署的項目和服務器較多時就用上了Jenkins進行自動部署
優點
- 不用在連接單獨的服務器進行更新項目,再啟動項目服務的操作了
- 更新部署都是自動的,比較方便。適合大批量的部署
一、git流程部分
項目或代碼更新后。首先還是先走提交倉庫流程,然后再創建git tag打包版本並推送到遠程服務器,便於下一步Jenkins部署
1.查看項目代碼變化
git status
2.將變化后的代碼提交到暫存區
git add .
ps:
git add . 提交新文件(new)和被修改(modified)文件,不包括被刪除(deleted)文件
git add -A 提交所有變化
git add -u 提交被修改(modified)和被刪除(deleted)文件,不包括新文件(new)
一般來說,常用的提交命令就是 git add .
3.提交注釋
git commit -m 'xxxxxx'
ps:
這一步要確保你已經設置了此次git提交的用戶及郵箱,沒有設置會提示你進行設置后才能提交注釋,注釋一定要寫的言簡意賅
提交用戶及郵箱的設置方法有兩種。在我之前的隨筆里有寫,這里不再過多贅述,這里直接使用修改全局git提交用戶及郵箱的命令,分別執行:
git config --global user.name 你的目標用戶名
git config --global user.email 你的目標郵箱名
4.推送前先下拉項目最新代碼。避免直接提交會覆蓋其他同事新push的代碼,推送代碼前先下拉這是一個好習慣
git pull
5.推送更新的代碼到遠程倉庫
git push
6.添加git tag版本前先查看項目已有的git tag版本
git tag -l
7.添加tag版本
git tag -a vx.x.x -m 'vx.x.x'
ps:
git tag打標簽分為兩種類型:輕量標簽和附注標簽,輕量標簽是指向提交對象的引用,附注標簽則是倉庫中的一個獨立對象。
創建輕量標簽不需要傳遞參數,直接指定標簽名稱即可
git tag vx.x.x-light
創建附注標簽時,參數a即annotated的縮寫,指定標簽類型,后附標簽名。參數m指定標簽說明,說明信息會保存在標簽對象中,建議使用附注標簽
例子:git tad -a v1.3.5 -m 'v1.3.5版本' 即表示此次添加的git tag新版本為1.3.5,提交的注釋為v1.3.5版本
切換到標簽,與切換分支命令相同:
git checkout [tagname]
查看標簽信息
git show v0.1.2
刪除標簽(誤打或需要修改標簽時,需要先將標簽刪除,再打新標簽)
git tag -d vx.x.x
參數d即delete的縮寫,意為刪除
8.推送git tag版本到遠程倉庫服務器
git push origin --tags
ps:
推送git tag版本有兩種方式,建議直接使用推送全部未推送過的本地標簽的方式推送
推送指定的一個本地標簽到遠程倉庫
git push origin tagname
推送全部的本地標簽
git push origin --tags
到這里,Jenkins自動化部署更新,Git部分就完成了所有工作
二、Jenkins自動化部署流程部分
目前我接觸的部署都是采用ansible-playbook部署組件,將打包好的項目代碼拷貝到服務器上,安裝依賴環境,啟動項目,對應的每個項目有一個jenkins標簽組,標簽組下面就是該項目的相關部署維護流水線任務
1.build打包新版本代碼工程
- 任務名稱:xx_build
- 任務內容:xx代碼工程編譯任務,按之前設置的git代碼倉庫中的tag標簽編譯來打包admin工程
1.點擊build這一欄,跳轉進入build提交前界面
2.點擊Build with Parameters進入build提交界面
3.在選擇欄中選擇git tag里之前自己推送的git tag版本進行Build提交
2.update更新版本代碼工程到指定服務器
- 任務名稱:xx_update
- 任務內容:xx代碼工程更新任務,按前面build任務編譯的版本,以及填入的目標服務器,更新目標服務器的代碼工程版本
1.點擊update這一欄,跳轉進入update提交前界面
2.點擊Build with Parameters進入update提交界面
3.手動填寫剛剛build的git tag版本,並填入指定服務器IP進行update Build提交
這樣就完成了一整套的Jenkins自動化部署服務器及git 提交及git tag標簽版本更新流程
寫這個最主要還是為了自己熟悉和積累,當然希望能幫助到其他人,有問題也可以在評論區交流