Jenkins安裝
到Jenkins的官網(wǎng):http://jenkins.io?下載jenkins.war
然后將jenkins.war文件上傳到Linux服務(wù)器谈飒,執(zhí)行
nohup jar -jar jenkins.war &
啟動(dòng)Jenkins
在頁(yè)面上如何授權(quán)碼進(jìn)入Jenkins基跑,授權(quán)碼可以在啟動(dòng)Jenkins的命令行中看到可款,只有第一次進(jìn)入時(shí)需要輸入授權(quán)碼
點(diǎn)擊Install suggested plugins行拢,安裝Jenkins建議安裝的插件囱晴,如果部分插件沒(méi)有安裝成功,可以重復(fù)多次霜定,直到所有的插件都安裝成功
創(chuàng)建用戶
再安裝幾個(gè)比較好用的Jenkins插件:Rebuilder噩翠、Safe Restart、Publish Over SSH言沐、Maven Integration 依次點(diǎn)擊:系統(tǒng)管理 -> 插件管理 -> 可選插件邓嘹,輸入插件名搜索插件
點(diǎn)擊直接安裝
給剛創(chuàng)建的用戶分配權(quán)限依次點(diǎn)擊:系統(tǒng)管理-> 全局安全配置 -> 安全矩陣 -> Add User or group name
點(diǎn)擊Add User or group name,添加自己的賬號(hào)(我的是admin賬號(hào))险胰,給賬號(hào)分配權(quán)限汹押,我是給該賬號(hào)所有的權(quán)限,如果是普通的賬號(hào)起便,可以去掉Administrator(第一個(gè)棚贾,系統(tǒng)管理的權(quán)限)
Linux服務(wù)器設(shè)置
安裝Java jdk:
?
yun install java
查看是否安裝成功:
java -version
安裝并配置Git
?
安裝Git命令:
yum install?git
查看git是否安裝成功:
git version
將git初始化并生成授權(quán)證書
設(shè)置用戶名和郵箱,用戶名和郵箱不需要是真實(shí)的個(gè)人信息
git?config --global user.name "admin"git?config --global user.email "admin@abc.com"
生成授權(quán)證書榆综,中間直接全部回車就行
ssh-keygen?-t?rsa?-C?"admin@abc.com"
查看證書是否生成成功
cd?~/.ssh/ll
id_rsa是私鑰妙痹,id_rsa.pub是公鑰
gitee證書配置
?
在gitee中依次點(diǎn)擊:設(shè)置 -> 安全設(shè)置 -> ssh公鑰,將公鑰中的內(nèi)容復(fù)制到公鑰文本框中鼻疮,隨便寫一個(gè)標(biāo)題即可
驗(yàn)證git的配置是否正確
ssh?git@gitee.com
安裝并配置maven
?
直接官網(wǎng)下載解壓安裝后在/etc/profile配置環(huán)境變量
export?MAVEN_HOME=/opt/apache-maven-3.6.1export?PATH=${MAVEN_HOME}/bin:$PATH
查看是否安裝成功
source /etc/profilemvn -version
將Linux注冊(cè)到Jenkins上
?
新建節(jié)點(diǎn)
在Jenkins中依次點(diǎn)擊:系統(tǒng)管理 -> 節(jié)點(diǎn)管理 -> 新建節(jié)點(diǎn)
點(diǎn)擊確定按鈕怯伊,然后配置Jenkins在Linux中的路徑、LInux服務(wù)器的IP地址判沟、Linux服務(wù)器的賬號(hào)和密碼
啟動(dòng)從節(jié)點(diǎn)驗(yàn)證Linux服務(wù)器已經(jīng)成功注冊(cè)到Jenkins上點(diǎn)擊我們剛添加的節(jié)點(diǎn)耿芹,然后點(diǎn)擊啟動(dòng)代理按鈕,連接Linux服務(wù)器
如果連接服務(wù)器時(shí)出現(xiàn)如下錯(cuò)誤信息
就將Host Key Verrification Strategy配置成Non Verfifying Verrification Strategy
新建Job驗(yàn)證Jenkins任務(wù)可以遠(yuǎn)程運(yùn)行在Linux服務(wù)器上
?
在Jenkins主頁(yè)點(diǎn)擊【開始創(chuàng)建一個(gè)新任務(wù)】按鈕水评,然后輸入任務(wù)名猩系,選擇構(gòu)建一個(gè)maven項(xiàng)目,注意:只有安裝了Maven Integration插件才有這個(gè)選項(xiàng)
點(diǎn)擊【確定】按鈕
shell腳本的內(nèi)容中燥,根據(jù)項(xiàng)目的實(shí)際需求編寫
#!/bin/shecho?"開始執(zhí)行shell腳本"# 在jenkins環(huán)境中一定要加這句話寇甸,否則這個(gè)腳本進(jìn)程最后會(huì)被殺死export?BUILD_ID=dontKillMe# 指定最后編譯好的jar的存放位置JAR_PATH=/opt/workspace/appserver# 如果路徑不存在,就創(chuàng)建路徑[ ! -e $JAR_PATH?] && mkdir -p $JAR_PATH# 指定jenkins中存放編譯好的jar的位置JENKINS_JAR_PATH=/home/wenbo/jenkins/workspace/testProject/target# 如果路徑不存在,就創(chuàng)建路徑[ ! -e $JENKINS_JAR_PATH?] && mkdir -p $JENKINS_JAR_PATH# 指定jenkins中存放編譯好的jar的名稱(這個(gè)jar的名字和pom文件配置有關(guān))JENKINS_JAR_NAME=appserver-0.0.4.jar# 獲取該項(xiàng)目的進(jìn)程號(hào)拿霉,用于重新部署項(xiàng)目前殺死進(jìn)程process_id=$(ps -ef | grep appserver | grep -v "grep"?| awk '{print $2}')# 如果該項(xiàng)目正在運(yùn)行吟秩,就殺死項(xiàng)目進(jìn)程if?[[ ! -z "$process_id"?]]then?
echo?"停止服務(wù)"
?? ?kill?-9 $process_idelse?
echo?"服務(wù)未啟動(dòng)"fi# 進(jìn)入Jenkins中編譯好的jar的位置cd?${JENKINS_JAR_PATH}# 將Jenkins中編譯好的jar復(fù)制到最終存放項(xiàng)目jar的位置cp $JENKINS_JAR_PATH/$JENKINS_JAR_NAME?$JAR_PATH# 進(jìn)入到存放項(xiàng)目jar的位置cd?${JAR_PATH}# 后臺(tái)啟動(dòng)項(xiàng)目,并且將控制臺(tái)日志輸出到nohup.out中nohup java -jar ${JENKINS_JAR_NAME}?--server.port=9000 -Dfile.encoding=UTF-8 >nohup.out &echo?"shell腳本執(zhí)行完畢"
然后點(diǎn)擊【立即構(gòu)建】按鈕绽淘,構(gòu)建項(xiàng)目涵防,點(diǎn)擊下面的#1就可以看到到項(xiàng)目的詳情
可以在控制臺(tái)輸出中查看到控制臺(tái)中打印出的內(nèi)容,可以看到剛才在shell中輸入的命令被執(zhí)行了
至此沪铭,我們的spring boot項(xiàng)目就自動(dòng)部署成功了壮池。