Jenkins是一个开源自动化服务器.主要用于监控,发布等持续重复的工作。

本文主要讲如何构建项目

Linux环境安装Jenkins 请参考:传送门

1.部署流程

简介:Jenkins负责拉取新代码,并编译打好包,然后推送到目标服务器响应目录下启动。在这里插入图片描述

2.环境准备

CentOS服务器2台

  • 192.168.3.7(部署了Jenkins服务)
  • 192.168.3.11(需要发布到这台上启动)

3.全局配置在这里插入图片描述

3.1JDK配置在这里插入图片描述

3.2GIT配置在这里插入图片描述

3.3Maven配置在这里插入图片描述

4.项目部署

4.1新建任务在这里插入图片描述

4.2任务配置在这里插入图片描述

4.2.1公共变量在这里插入图片描述

SERVER_NAME=spring-boot-helloWorld
SERVER_PATH= /home/devjava/service
USERNAME=root
HOST=192.168.3.11

4.2.2Git参数在这里插入图片描述### 4.2.3源码参数在这里插入图片描述

4.2.4执行shell

执行shell脚本分为以下几块

  • Maven打包
  • 获取Jar打包成功的位置
  • 使用SSH免密登录方式传输Jar到目标服务并启动。
    • SSH免密登录配置参考:传送门
      在这里插入图片描述

      完整脚本原文
# maven打包
echo '正在编译...'
mvn clean install -Dmaven.test.skip=true

# 判断mvn执行是否成功
if(($? == 0))
then
echo '编译成功'
else
echo '编译失败'
exit 1
fi

# 拷贝 jar 包到,目录
# 获得当前目录
curDir=`pwd`
# 获得 traget 路径
targetDir=$curDir'/'`ls $curDir | grep  -m 1 'target$'`'/'
echo '打包路径为:'$targetDir


# 获得包名
JARNAME=`ls $targetDir | grep  -m 1 'jar$'`
jarPath=$targetDir$JARNAME
echo 'jar路径为:'$jarPath


# 停止服务
ssh $USERNAME@$HOST "sh ~/stop_service.sh ${SERVER_NAME}"

# 推送包
scp -r $jarPath $USERNAME@$HOST:/${SERVER_PATH}/${SERVER_NAME}.jar

# 启动服务
ssh $USERNAME@$HOST "source /etc/profile;java -server -Xms256m -Xmx256m -Xmn128m -jar /${SERVER_PATH}/${SERVER_NAME}.jar > /${SERVER_PATH}/${SERVER_NAME}.log &"

4.3项目发布

选择要发布的分支或标签开始构建,
点击左下角的小圆球可以进入构建详情页在这里插入图片描述
综上就是使用Jenkins发布maven项目的过程了

关注程序员小强公众号更多编程趣事,知识心得与您分享
在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐