使用 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项目结束。

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