本篇文章前端項目以vue為例(其實前端工程化項目的操作方法都相同)荧关,部署在Linux系統(tǒng)上(centos)溉奕。
之前做前端項目的部署,一直都是手動運行打包命令忍啤,打包完加勤。再使用FTP
、Xshell
等這類的工具上傳到服務(wù)器同波。這種方式不僅效率不高鳄梅,而且容易出錯,一不小心就放錯地方了参萄∥乐Γ或者公司有運維,只需要打包前端項目代碼后發(fā)給運維就不管了讹挎,但是一般的小公司是沒有運維的校赤。所以呢,就在找有沒有什么工具可以自動幫我完成這些操作筒溃,于是就找到了下面這貨马篮,名字叫做Jenkins
。隨著用的越來越多怜奖,越來越順心浑测,這小老頭也是越看越順眼了!M崃帷迁央!
這篇文章的主要目的,就是實現(xiàn)往github
push
代碼或者合并代碼到項目的master
或者其他分支滥崩,jenkins
就自動部署代碼到對應(yīng)服務(wù)器岖圈。
一、Jenkins的安裝與配置
Jenkins
是一個開源軟件項目钙皮,是基于Java
開發(fā)的一種持續(xù)集成工具蜂科,用于監(jiān)控持續(xù)重復(fù)的工作顽决,旨在提供一個開放易用的軟件平臺,使軟件的持續(xù)集成變成可能导匣。(摘自百度百科)
1. java環(huán)境的搭建
因為它是依賴于Java
環(huán)境的才菠,所以必須先安裝java
環(huán)境,否則啟動Jenkins
服務(wù)的時候會報錯哦贡定。
執(zhí)行以下命令安裝JDK赋访,一步到位。建議安裝版本1.8以上的
yum install java-1.8.0-openjdk
2. 安裝Jenkins
我一般習(xí)慣使用yum
安裝軟件厕氨。由于yum
的repo
中默認(rèn)沒有Jenkins
进每,所以需要先將Jenkins
庫添加到yum repos
中,依次執(zhí)行下面的命令:
cd /etc/yum.repos.d/
wget http://pkg.jenkins.io/redhat/jenkins.repo
rpm --import http://pkg.jenkins.io/redhat/jenkins.io.key
yum install -y jenkins
賦予Jenkins
在網(wǎng)站根目錄的讀寫權(quán)限命斧,我這邊網(wǎng)站的根目錄為/usr/share/nginx/hxkj
chown -R jenkins.jenkins /usr/share/nginx/hxkj
啟動Jenkins
service jenkins start
因為jenkins
默認(rèn)使用8080
端口田晚,如果使用的是云服務(wù)器,還需要在安全組中開放8080
端口(如果不想使用8080
端口国葬,或者端口被占用了贤徒,可以在Jenkins
的配置文件里修改默認(rèn)端口)
3. Jenkins的初始化使用
3.1、在瀏覽器輸入http://服務(wù)器IP:8080
打開jenkins
汇四,首次打開需要獲取管理員的密碼接奈,如圖:
可以根據(jù)頁面提示在服務(wù)器中找到該密碼,輸入如下命令:(cat
命令后面的路徑為頁面上顯示的標(biāo)紅文字通孽,每個人的可能不一樣)
cat /var/lib/jenkins/secrets/initalAdminPassword
3.2序宦、安裝默認(rèn)插件:輸入密碼,提交完成之后會跳轉(zhuǎn)到插件安裝頁面背苦,選擇第一個然后進行安裝互捌,如圖:
這一步,啥都不用做行剂,慢慢等吧秕噪。。厚宰。
接下來默認(rèn)插件安裝完成之后腌巾,創(chuàng)建一個管理員賬戶,完成配置后铲觉,就可以登錄 Jenkins
了
3.3澈蝙、安裝 NodeJs插件,用于vue項目打包構(gòu)建撵幽。
打開系統(tǒng)管理
=> 管理插件
搜索 NodeJs
然后勾選安裝
打開系統(tǒng)管理
=> 全局工具配置
拉到底部 配置 node 版本碉克,如圖:
4. 配置自動部署任務(wù)
4.1、新建任務(wù):點擊新建任務(wù)
=> 輸入任務(wù)名稱
并齐,選擇構(gòu)建一個自由風(fēng)格的軟件項目
然后確定
4.2漏麦、配置git,進入任務(wù)配置
况褪,選擇源碼管理
撕贞,因為我的項目是開源的,所以無需填寫賬號密碼
4.3测垛、設(shè)置構(gòu)建環(huán)境捏膨,選擇 Provide Node & npm bin/ folder to PATH
然后選擇之前安裝插件時候配置的node版本
4.4、配置項目自動化打包食侮,選擇 增加構(gòu)建步驟
=> Excute shell
這個是運行相關(guān)的sh命令(這一步建議耗時操作分離步驟)
所有命令
cd /var/lib/jenkins/workspace/hxkj #進入Jenkins工作空間下hxkj項目目錄
node -v #檢測node版本(此條命令非必要)
npm -v #檢測npm版本(此條命令非必要)
npm config set registry https://registry.npm.taobao.org #把npm源設(shè)置為淘寶源(這個你懂的)
npm config get registry #檢測npm是否切換成功(此條命令非必要)
npm install #安裝項目中的依賴
npm run build #打包
cd dist
rm -rf hxkj.tar.gz #刪除上次打包生成的壓縮文件(一般建議備份号涯,不要直接刪除,這邊測試就無所謂啦)
tar -zcvf hxkj.tar.gz * #把生成的項目打包成壓縮包锯七,方便移動到項目部署目錄
cd /usr/share/nginx/hxkj #進入web項目根目錄
mv /var/lib/jenkins/workspace/hxkj/dist/hxkj.tar.gz ./ #移動剛剛打包好的項目到web項目根目錄
tar -zxvf hxkj.tar.gz -C dist/ #解壓項目到dist目錄
rm -rf hxkj.tar.gz #刪除壓縮包
步驟分離之后链快,如下圖
4.5、保存后點擊立即構(gòu)建
查看任務(wù)是否能夠成功構(gòu)建眉尸,控制臺輸出
菜單可以查看構(gòu)建日志域蜗。
到現(xiàn)在為止,Jenkins構(gòu)建已經(jīng)配置完畢噪猾,接下來就是配合github來完成騷操作了霉祸!
二、GitHub+Jenkins聯(lián)動配置
1. 創(chuàng)建 github AccessToken
進入 github
設(shè)置頁袱蜡,選擇Developer settings
選擇 Personal access tokens
=> Generate new Generate
勾選如下配置丝蹭,然后點擊Generate Generate
,一定要保存好這個token
哦坪蚁,它只顯示一次奔穿。
2. Jenkins添加github插件
打開系統(tǒng)管理
=> 管理插件
搜索 Github Plugin
然后勾選安裝
然后進入 系統(tǒng)管理
=> 系統(tǒng)設(shè)置
=> Github Server
添加信息
憑據(jù)
那里再點擊 添加
添加如下信息
添加完畢之后記得選擇我們剛剛添加的憑據(jù)信息
最后點擊 連接測試
如果如下顯示,說明配置是正確的
三迅细、Git push測試
Git的push操作巫橄,這邊就不演示了
當(dāng)完成push
操作之后,回到Jenkins
管理頁面茵典,就會看到在構(gòu)建隊列中湘换,新增了一條記錄。
而且统阿,查看構(gòu)建日志彩倚,也提示成功!7銎健帆离!
At last,看完之后有什么不懂的结澄,可以留言反饋哥谷。
轉(zhuǎn)載請注明出處:http://www.reibang.com/p/4c4f92209dd1
作者:TSY
個人空間:https://hxkj.vip