jenkins+springboot+ssm(jar)自動部署學習總結

非常感謝大牛們的分享,項目demo終於自動部署成功~~

相關資料:

嘟嘟的獨立博客 , jenkins for SpringBoot,

久等了,我們進入正題:

環境: centos7 , jdk8 , git2.3.7 ,maven3.5.3 , tomcat8

首先爲了方便管理軟件,我全部裝在/opt這個目錄下:

mkdir java git jenkins maven mysql tomcat


jdk8安裝:

cd java
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"  
tar xzf jdk-8u141-linux-x64.tar.gz
配置環境變量:
vim /etc/profile
這是我的完整配置,實際根據自己的文件目錄配置,在最下面添加(文件夾名稱我改過):
JAVA_HOME=/opt/java/jdk8
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH:$MAVEN_HOME/bin:$PATH:$GIT_HOME/bin:$PATH
MAVEN_HOME=/opt/maven/maven3.5.3
GIT_HOME=/opt/git
export JAVA_HOME
export PATH
export CLASSPATH
export MAVEN_HOME
export GIT_HOME 

文件生效:
source /etc/profile
注意:/etc/profile生效後還要複製到/etc/bashrc,不然重啓服務環境變量失效需要重新source /ect/profile
vim /etc/bashrc

生效設置:

source /etc/bashrc

java環境測試:

java -version

Maven安裝:

cd maven
wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz

tar zxvf apache-maven-3.5.3-bin.tar.gz

配置環境(同上)!

Maven環境測試:

mvn -v

Tomcat8安裝:

cd tomcat
wget mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.31/bin/apache-tomcat-8.5.31.tar.gz  

tar zxvf apache-tomcat-8.5.31.tar.gz  

解壓後我改過名字tomcat8.5.31

作用:用來運行jenkins.war包的服務

Git安裝(並關聯github):

wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.3.7.tar.gz

tar -zxvf git-2.3.7.tar.gz 

cd git-2.3.7

#設置安裝路徑
./configure --prefix=/opt/git
make && make install

配置環境(同上)!

git環境測試:

git --version


如果出現安裝版本不一致,肯定是默認安裝git,先卸載再安裝

相關資料:

安裝卸載git , Git 遠程倉庫(Github)


jenkins安裝:

兩種安裝方式:

1 : docker (測試過,有點問題,所以放棄)

2 : jenkins.war發佈到tomcat運行(採用)

cd jenkins
wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war

#將war包複製到之前解壓好的tomcat的webapps下並運行
cp jenkins.war /opt/tomcat/tomcat8.5.31/webapps

環境都搭建好,終於進入jenkins管理界面了:

根據提示找到密碼後登錄註冊


點擊左邊默認推薦暗轉插件





看看這幾個插件有沒有,:


裝好插件後配置jenkins:


歷經千辛萬苦終於可以創建我的第一個任務了:

構建完成後執行的腳本:

/opt/jenkins/stop.sh
/opt/jenkins/replace.sh
BUILD_ID=dontKillMe nohup /opt/jenkins/startup.sh &

具體腳本內容:

stop.sh

# 將應用停止
#stop.sh 
#!/bin/bash 
echo "Stopping SpringBoot Application" 
pid=`ps -ef | grep model.jar | grep -v grep | awk '{print $2}'` 
if [ -n "$pid" ] 
then 
kill -9 $pid 
fi

replace.sh

#replace.sh 用於將上次構建的結果備份,然後將新的構建結果移動到合適的位置
#!/bin/bash # 先判斷文件是否存在,如果存在,則備份
file="/opt/jenkins/release/jz-blog.jar" 
if [ -f "$file" ] 
then mv /opt/jenkins/release/jz-blog.jar /opt/jenkins/backup/jz-blog.jar.`date +%Y%m%d%H%M%S` 
fi
mv ~/.jenkins/workspace/jz_blog/target/jz-blog.jar /opt/jenkins/release/jz-blog.jar

startup.sh

#startup.sh 啓動項目
#!/bin/sh
echo "授予當前用戶權限"
chmod 777 /opt/jenkins/release/jz-blog.jar
echo "執行....."
java -jar /opt/jenkins/release/jz-blog.jar

shell文件授權:

chmod 777 stop.sh
chmod 777 replace.sh
chmod 777 startup.sh

趕快構建看看!!!


構建並運行成功,直接訪問項目!!


大功告成!!!!!!!

期間遇到的問題:

1.docker安裝jenkins涉及容器通信,需要配置容器類jdk,maven,git的環境配置

2.運行jenkins內存不夠,會導致構建項目jvm內存溢出失敗!!

解決:調整linux的swap交換內存大小,調整爲2G. swap調整




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