gitee->jenkins->springboot部署

git仓库 -> jenkins 部署spring boot项目

本项目使用的是个人gitee仓库,部署服务器在腾讯云。

一、jenkins是什么?

​ Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。(!!!!部署时会消耗大量CPU资源)

二、怎么安装

通过rpm安装

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

yum install -y jenkins

详情看:https://blog.csdn.net/hc_ttxs/article/details/79384535

需要配置JDK MAVEN

三、配置Springboot项目流水线构建

新建一个任务

image-20210723153838276

构建一个MAVEN项目

找到源码管理

添加你的git仓库

在下方选择分支

image-20210723154008015

image-20210723154111120

编写shell 脚本

image-20210723154123428

#!/bin/sh

echo "开始执行shell脚本"

# 在jenkins环境中一定要加这句话,否则这个脚本进程最后会被杀死
export BUILD_ID=dontKillMe

# 指定最后编译好的jar的存放位置
JAR_PATH=/springboot02/target/

# 如果路径不存在,就创建路径
[ ! -e $JAR_PATH ] && mkdir -p $JAR_PATH

# 指定jenkins中存放编译好的jar的位置
JENKINS_JAR_PATH=/var/lib/jenkins/workspace/springboot/target/
#/var/lib/jenkins/workspace/springboot/target/ 
# 如果路径不存在,就创建路径
[ ! -e $JENKINS_JAR_PATH ] && mkdir -p $JENKINS_JAR_PATH

# 指定jenkins中存放编译好的jar的名称(这个jar的名字和pom文件配置有关)
JENKINS_JAR_NAME=springboot-SNAPSHOT.jar

# 获取该项目的进程号,用于重新部署项目前杀死进程
process_id=$(ps -ef | grep springboot | grep -v "grep" | awk '{print $2}')

# 如果该项目正在运行,就杀死项目进程
if [[ ! -z "$process_id" ]]
then 
    echo "停止服务"
    kill -9 $process_id
else 
    echo "服务未启动"
fi

# 进入Jenkins中编译好的jar的位置
cd ${JENKINS_JAR_PATH}

# 将Jenkins中编译好的jar复制到最终存放项目jar的位置
cp $JENKINS_JAR_PATH/$JENKINS_JAR_NAME $JAR_PATH

# 进入到存放项目jar的位置
cd ${JAR_PATH}

# 后台启动项目,并且将控制台日志输出到nohup.out中
nohup java -jar springboot-SNAPSHOT.jar --server.port=8081 -Dfile.encoding=UTF-8 >nohup.out &

echo "shell脚本执行完毕"

最后保存返回主页面,进行构建。

访问你构建的IP:端口

服务正常运行 OK

待实现,检测到Master分支更新后就进行构建

jenkins+gitee 自动化构建流程

上次遗留补完

先贴官方教程:https://gitee.com/help/articles/4193#article-header0

首先

  • 安装Gitee Jenkins Plugin
  • 添加gitee链接配置
  • 在之前的任务配置中配置webhook
  • 在git仓库中配置webhook

image-20210730150149908

详细步骤:

插件安装

  1. 在线安装
    • 前往 Manage Jenkins -> Manage Plugins -> Available
    • 右侧 Filter 输入: Gitee
    • 下方可选列表中勾选 Gitee(如列表中不存在 Gitee,则点击 Check now 更新插件列表)
    • 点击 Download now and install after restart

输入图片说明

  1. 手动安装
    • release 列表中进入最新发行版,下载对应的 XXX.hpi 文件
    • 前往 Manage Jenkins -> Manage Plugins -> Advanced
    • Upload Plugin File 中选择刚才下载的 XXX.hpi 点击 Upload
    • 后续页面中勾选 Restart Jenkins when installation is complete and no jobs are running

输入图片说明

插件配置

添加Gitee链接配置

  1. 前往 Jenkins -> Manage Jenkins -> Configure System -> Gitee Configuration -> Gitee connections

  2. Connection name 中输入 Gitee 或者你想要的名字

  3. Gitee host URL 中输入Gitee完整 URL地址: https://gitee.com (Gitee私有化客户输入部署的域名)

  4. Credentials

中如还未配置Gitee APIV5 私人令牌,点击

   Add

- >

   Jenkins
  1. Domain 选择 Global credentials
  2. Kind 选择 Gitee API Token
  3. Scope 选择你需要的范围
  4. Gitee API Token 输入你的Gitee私人令牌,获取地址:https://gitee.com/profile/personal_access_tokens
  5. ID, Descripiton 中输入你想要的 ID 和描述即可。
  1. Credentials 选择配置好的 Gitee APIV5 Token

  2. 点击 Advanced ,可配置是否忽略 SSL 错误(视您的Jenkins环境是否支持),并可设置链接测超时时间(视您的网络环境而定)

  3. 点击 Test Connection 测试链接是否成功,如失败请检查以上 3,5,6 步骤。

配置成功后如图所示: Gitee链接配置

新建构建任务

前往 Jenkins -> New Item , name 输入 'Gitee Test',选择 Freestyle project 保存即可创建构建项目。

任务全局配置

任务全局配置中需要选择前一步中的Gitee链接。前往某个任务(如'Gitee Test')的 Configure -> General,Gitee connection 中选择前面所配置的Gitee链接,如图:

任务全局配置

最后 ,在你自己的工程中配置触发器即可。

总结:以前觉得很难解决,结果就花了10分钟时间。

本文由博客一文多发平台 OpenWrite 发布!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值