1、去年在自己的伺服器上安裝了jenkins,說用來自己研究一下jenkins自動化部署前端專案,jenkins安裝好了,可是一直沒管,最近終於研究了一下使用jenkins自動化部署,以此記錄下來。
一、jenkins的安裝
由於安裝已經過去大半年時間了,具體步驟沒有記錄,可以到網上自行百度。
大致流程:
1、安裝jdk
2、下載jenkins包並安裝
3、修改jenkins埠(我用的8888埠)
4、防火牆開啟對應埠(我的開啟8888埠)
5、啟動jenkins:service jenkins start
注:jenkins安裝好後的預設賬號是admin,預設密碼在 /var/jenkins_home/secrets/initialAdminPassword 檔案中,重置密碼請自行百度
二、配置jenkins許可權
安裝完Jenkins後,還需要再配置一下Jenkins
的root許可權(提升執行shell命令的許可權)
sudo vim /etc/sysconfig/jenkins 編輯狀態中 JENKINS_USER="root"
修改 Jenkins 相關資料夾使用者許可權
chown -R root:root /var/lib/jenkins chown -R root:root /var/cache/jenkins chown -R root:root /var/log/jenkins
重啟jenkins服務
service jenkins restart
三、jenkins安裝外掛
點選Dashboard 旁邊的向下的黑色箭頭(截圖裡看不到)-系統管理-外掛管理
進入到該頁面後,點選 可選外掛,可以搜尋並安裝外掛
需要安裝如下外掛:
NodeJS Plugin(nodejs環境)
Publish over SSH (用於執行構建後的操作)
Gitee Plugin(由於我用的是gitee管理程式碼,所以需要安裝)
四、配置資訊
點選左上角Dashborad -> 系統管理 -> 全域性工具配置
4.1、配置git命令
4.2、配置node資訊
這裡需要選擇和自己本地node一致的版本
4.3、配置gitee
證書令牌需要提前在gitee裡配置,登入gitee賬戶,進入設定 -> 私人令牌 頁面,點選生成新令牌
4.4、配置Publish over SSH
1、在自己的伺服器上生產ssh key
ssh-keygen -t rsa -C "xxxx@xxx.com"
2、檢視生成的公鑰
cat ~/.ssh/id_rsa.pub
3、複製公鑰到下圖的位置
五、新建任務
5.1、新增任務和選擇任務型別
點選左側的 新建任務,開啟如下頁面,輸入一個任務名稱,選擇“構建一個自由風格的軟體專案”,點選確定
5.2、配置原始碼管理
5.3、配置構建觸發器
5.4、配置構建環境
5.5、配置構建
增加構建步驟 選擇 執行shell,並編寫shell指令碼:
繼續點選:增加構建步驟 -> Send files or execute commands over SSH
執行sheel指令碼,其實sheel指令碼里的命令也就是先把nginx下的對應前端工程程式碼先進行備份,然後使用npm命令進行打包,生成dist目錄,最後再把dist目錄下的所有檔案複製到nginx下對應的前端工程目錄下,這樣也就完成了前端工程部署。nginx下替換完前端工程程式碼後,不用重啟nginx。
六、執行構建
可以手動點選執行構建,另外我配置了master分支下程式碼有push時,會自動執行構建。
如上圖,執行構建任務部署成功,瀏覽器端直接重新整理頁面即可看到部署後的頁面效果。
備註:該篇部落格裡記錄的配置步驟有些粗糙,或許存在遺漏。不足之處敬請指教。