使用Jenkins部署一个maven项目

记录自己使用Jenkins部署一个maven微服务项目到Linux上的过程

本文是记录自己使用Jenkins部署一个maven微服务项目到Linux上的过程,我Jenkins也是一知半解,有理解的不对的地方,还望大家斧正。


前言

前阵子想将自己写的微服务部署到Linux上测试一下,于是使用Jenkins,这里记录一下部署的过程,也算是一个流程梳理,再学习的过程。
这里用到的服务就是一个简单的springboot项目,使用maven管理依赖。
部署前需要用做的准备,如安装Jenkins、jdk、maven等,大家可以参照这片文章做准备:
使用Jenkins的前置操作


一、自动化部署过程原理

部署过程如下:
在这里插入图片描述
需要编写一个shell脚本来执行这个过程。

具体的创建Jenkins任务的过程为

1.创建jenkins任务

2.配置git参数

3.填写Server信息

4.填写构建语句(shell脚本),实现自动部署。

我的理解就是使用Jenkins,先从git上下载项目源码,根据命令进行打包,然后将jar包从Jenkins的工作空间转移到想要启动项目的目录,执行启动命令运行服务。

二、在Jenkins上创建任务?

1.打开Jenkins的工作台页面

在Jenkins的工作台页面上点击新建任务
在这里插入图片描述

2.开始创建任务

选择新建一个maven项目
在这里插入图片描述

三、任务配置

1.进入任务后,点击配置,配置构建中要进行的操作

在这里插入图片描述

2.具体的配置

因为选择的是maven项目,进来之后的目录是这样的
在这里插入图片描述

1.General

我没有进行配置
在这里插入图片描述

2.源码管理

将要部署的项目的源码地址以及分支信息填写进去。
在这里插入图片描述
在这里插入图片描述

3.构建触发器和构建环境

这里我参照其他的项目做的,我看没有选择,我也就没有选择。
在这里插入图片描述

4.Pre Steps

在这里插入图片描述

# 如果需部署的项目是配置的git项目(父项目)中的一个子项目文件目录
#此路径还需加上从父项目路径到子项目的文件路径
cd ${WORKSPACE}
# 执行maven命令进行清理、打包、选择prod配置、跳过单元测试
/opt/apache-maven-3.6.3/bin/mvn clean package -Pprod -Dmaven.test.skip=true

5.Build

在这里插入图片描述

6.Post Steps

在这里插入图片描述
这里我选择 构建项目后执行一个:通过SSH发送文件或执行命令
因为我司Jenkins的服务器和要部署项目的服务器不是一个

具体信息如下:
在这里插入图片描述

1.需要把jenkins打包好的项目复制到测试服务器
企业: jenkins所在的服务器和我们项目运行时的服务器应该不是同一台机器。
jenkins编译打包好的软件在jenkins所在的服务器。
具体的转移命令如下:
在这里插入图片描述


# backup jar file
mkdir /opt/你的项目启动目录
cd  /opt/你的项目启动目录
# 拷贝所有的Jenkins打包的bak文件
cp *jar $(ls *jar)_$(date +%Y%m%d%H%M).bak ; ls

2.配置转移的具体路径
在这里插入图片描述
在这里插入图片描述
上图2步骤的详解
在这里插入图片描述

3.将jar包拷贝成功后,启动项目
在这里插入图片描述


# kill and restart
mkdir -p /opt/你的项目启动目录
cd /opt/你的项目启动目录

source /root/.zshrc

export pid=$(jps -l | grep -E "需要部署的项目名-[0-9].*.jar" | awk '{ print $1}' )
echo 'kill '${pid}
kill ${pid} ; sleep 10 ; kill -9 ${pid} ; sleep 10

cd /opt/你的项目启动目录
nohup java -jar  -Xms256m -Xmx384m   -Dskywalking.agent.service_name=c14-helmet-video-processing  -Dskywalking.collector.backend_service=192.168.111.22:11800   -javaagent:/opt/plugins/agent/skywalking-agent-8.14.0/skywalking-agent.jar  c14-helmet-video-processing*jar> /dev/null 2>&1 & ; sleep 10

export pid=$(jps -l | grep -E "需要部署的项目名-[0-9].*.jar" | awk '{ print $1}' )
echo start process ${pid}

7.构建设置和构建后操作

我这里没有配置,这里可以选择配置构建后的一些操作,如发送邮件通知、完成构建后再执行其他构建操作。
在这里插入图片描述

四、立即构建

在这里插入图片描述
控制台输出:
在这里插入图片描述


总结

以上就是就是我在使用Jenkins构建一个maven项目中的操作,有些功能也没搞太清楚,有大佬看出哪里有问题的话请告诉我,我再改正,谢谢大家。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值