使用 Jenkins + svn + maven 自動化部署 Spring Boot

目錄

一、準備環境

二、配置防火牆

三、配置tomcat

3.1 解壓

3.2 修改server.xml

四、安裝 Jenkins

4.1 下載

4.2 啓動tomcat

4.3 解鎖 Jenkins

4.4 自定義插件安裝

4.5 配置用戶名密碼

4.6 中文設置

五、插件安裝和全局環境配置

5.1 插件安裝

5.2 全局安全配置

5.3 全局工具配置

六、目標發佈服務器配置

七、部署項目

八、驗證


Jenkins 是 Devops 神器,本文介紹如何安裝和使用 Jenkins + svn + maven 部署 Spring Boot 項目;

一、準備環境

Centos7.6
JDK1.8
Jenkins2.238 
maven3.5.4
apache-tomcat-7
maven默認已經安裝完成;
jdk默認已經安裝完成;

二、配置防火牆

#centos7
systemctl stop firewalld.service
==============================
#以下爲:centOS 6.5關閉防火牆步驟
#關閉命令:
service iptables stop 
#永久關閉防火牆:
chkconfig iptables off
#兩個命令同時運行,運行完成後查看防火牆關閉狀態
service iptables status

三、配置tomcat

3.1 解壓

#解壓
zip apache-tomcat-7.0.75.zip

3.2 修改server.xml

#server.xml 地址
/home/jenkins/apache-tomcat-7.0.75/conf
#使用 vi 編輯 server.xml
vi server.xml

在server.xml中添加如入

四、安裝 Jenkins

4.1 下載

cd /home/jenkins
wget http://mirrors.jenkins.io/war/2.238/jenkins.war
#把下載下來的jenkins.war移動到tomcat中
mv jenkins.war /home/jenkins/apache-tomcat-7.0.75/webapps/

4.2 啓動tomcat

#進入到 /home/jenkins/apache-tomcat-7.0.75/bin
#給啓動腳本添加權限
chmod 777 s*
#啓動tomcat
./startup.sh
#停止tomcat
./shutdown.sh
#查看進程,驗證tomcat是否啓動
ps -ef|grep tomcat

啓動tomcat後,瀏覽器訪問:http://ip地址:8084/jenkins

4.3 解鎖 Jenkins

依照提示,查看/root/.jenkins/secrets/initialAdminPassword 文件內容填入文本框

輸入:49b1d9a63880431e85820d09b33eacac

4.4 自定義插件安裝

進入用戶自定義插件界面,建議選擇安裝官方推薦插件,因爲安裝後自己也得安裝:

接下來是進入插件安裝進度界面:

等待一段時間之後,插件安裝完成,配置用戶或者直接登錄

4.5 配置用戶名密碼

輸入:admin/admin

4.6 中文設置

相對於英文不好的人純英文界面不知道點哪裏,不要着急,我們這裏說一下怎麼設置成中文;

1)進入Manage Jenkins中,點擊Manage Plugins(插件設定)

2)安裝插件 Locale plugin

3)安裝中文漢化語言包插件 Localization: Chinese (Simplified)

4)在系統管理——>系統配置中設定中文語言,方法如下:

5)在Default Language中設定“zh_CN”簡體中文,"zh_TW"繁體中文

6)安裝後重啓 jenkins

重啓方法:http://訪問地址/restart,在jenkins訪問url後面 添加 restart 點擊 yes 重啓即可。

7)插件卸載方法

將紅框的內的插件卸載後重啓Jenkins,灰色卸載會在“Locale plugin”插件卸載成功後可以點擊。

在這裏插入圖片描述

五、插件安裝和全局環境配置

5.1 插件安裝

有很多插件都是選擇的默認的安裝的,所以現在需要我們安裝的插件不多,Git plugin 和 Maven Integration plugin、publish over SSH、Deploy to container、Subversion

插件安裝:系統管理 > 插件管理 > 可選插件,勾選需要安裝的插件,點擊直接安裝或者下載重啓後安裝。

5.2 全局安全配置

管理Jenkins > 配置全局安全性 > 可選插件,勾選需要安裝的插件,點擊直接安裝或者下載重啓後安裝。

1)沒有權限配置,只要登錄就可以操作

 

2)配置權限,登錄賬號經過賦權纔能有操作權限

5.3 全局工具配置

1)Maven 配置

 

2)JDK 配置

3)查看 maven 和 jdk 安裝目錄命令

echo $MAVEN_HOME
echo $JAVA_HOME

六、目標發佈服務器配置

使用用戶名+密碼方式登錄目標發佈服務器

管理Jenkins > 系統配置

點擊高級添加root賬號密碼

七、部署項目

首頁點擊新建:輸入項目名稱

下方選擇構建一個 Maven 項目,點擊確定。

勾選丟棄舊的構建,選擇是否備份被替換的舊包。我這裏選擇備份最近的10個

源碼管理,選擇 SVN,配置 SVN 相關信息,點擊 add 可以輸入 SVN 的賬戶和密碼

點擊添加,可以添加svn賬號和密碼

在 Build 中輸入打包前的 mvn 命令,如:

clean install -Dmaven.test.skip=true -Ptest

意思是:排除測試的包內容,使用後綴爲 test 的配置文件。

點擊高級可以配置maven

Post Steps 選擇 Run only if build succeeds

點擊Add post-build step,選擇 Send files or execute commands over SSH

Name 選擇上面配置的 Push SSH

Source files配置:target/xxx-0.0.1-SNAPSHOT.jar 項目jar包名

Remove prefix:target/

Remote directory:代碼應用服務器的目錄地址

Exec command:程序啓動腳本

腳本內容:

DATE=$(date +%Y%m%d)
export JAVA_HOME PATH CLASSPATH
JAVA_HOME=/usr/java/jdk1.8.0_241
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
DIR=/root/opt/data1/rs/centre
JARFILE=server-0.0.1-SNAPSHOT.jar

if [ ! -d $DIR/backup ];then
   mkdir -p $DIR/backup
fi
cd $DIR

ps -ef | grep $JARFILE | grep -v grep | awk '{print $2}' | xargs kill -9
scp $JARFILE backup/$JARFILE$DATE

java -jar $JARFILE > out.log &
if [ $? = 0 ];then
        sleep 30
        tail -n 50 out.log
fi

cd backup/
ls -lt|awk 'NR>5{print $NF}'|xargs rm -rf

這段腳本的意思,就是 kill 舊項目,刪除舊項目,啓動新項目,備份老項目。

注意xxxx.jar地址,因爲用命令啓動需要去找jar包,目前jenkins直接打在默認目錄了,沒有進行自定義設置,故如此配置。

八、驗證

1)控制檯輸出,查看啓動日誌

 

2)登錄發佈目標服務器,通過命令形式查看進程是否起來,命令如下

至此 jenkins + svn + maven  部署Spring Boot項目結束。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章