【Jenkins】Jenkins构建后端流水线

一、新建任务

1、输入任务名称,选择构建项目类型(这里我选择的是Maven项目),任务名称一般格式为:项目名称-前后端

在这里插入图片描述
在这里插入图片描述

2、创建成功后的结果

在这里插入图片描述

二、配置流水线

1、进入刚创建好的任务页面中,点击配置

在这里插入图片描述

2、General配置

xxxx后端-后端cim服务测试环境-项目构建
创建人:创建者姓名
时间:创建时间
保持构建天数:2
保持最大构建个数:3

在这里插入图片描述
在这里插入图片描述

3、源码管理

在这里插入图片描述

4、构建触发器和构建环境

在这里插入图片描述

5、Build

①clean:清楚之前;package:打包 -Dmaven.test.skip=true:跳过测试;-U:强制让Maven检查所有SNAPSHOT依赖更新

这里的pom.xml文件注意:
Branches to build:分支某个环境的必须是对应的环境的,不允许随意修改
Root Pom:必须是子pom
目前的私服并没有用起来,如果改动了common模块的代码,需要改成父pom文件构建再次改回来

在这里插入图片描述

②点击右下角的高级,配置Maven位置

在这里插入图片描述

6、Post Steps

在这里插入图片描述

7、构建后操作

①增加构建后操作步骤–Send build artifacts over SSH

在这里插入图片描述

②SSH Server

管理员账号配置的ssh server的名称,如果不存在,请联系管理员进行添加

在这里插入图片描述

③Transfers

注意:Source files中不能出现fewCode-cim,
在上传到服务器时,程序默认以当前目录为根目录,如果源文件名称为fewCode-cim/target/*.jar,则程序无法找到该文件,因为它包含了fewCode-cim目录,而程序默认只会上传该目录下的文件,而不会上传它的父目录。将源文件名称改为target/*.jar`则可以避免这个问题,因为它不包含任何目录,程序可以直接找到该文件并上传到服务器中。

1)项目结构

在这里插入图片描述

2)配置项内容
#!/bin/sh

# 判断目标进程是否已经启动,已经启动的话则关闭进程
pidlist=`ps -ef | grep XXX| grep -v grep | awk '{print $2}'`
if [ "$pidlist" = "" ]
    then
    echo -- log : XXX.SNAPSHOT项目没有启动
else
    echo -- log : 关闭服务
    kill -9 $pidlist
fi 

cd /home/admin/XXX

echo -- log : 项目启动
nohup java -Xms512m -Xmx512m -Dspring.cloud.nacos.config.server-addr=t-nacos.dmsd.tech:80 -Dspring.cloud.nacos.config.namespace=XXX-Dspring.cloud.nacos.config.username=XXX-Dspring.cloud.nacos.config.password=XXX-Dspring.cloud.nacos.discovery.server-addr=t-nacos.dmsd.tech:80 -Dspring.cloud.nacos.discovery.namespace=XXX-Dspring.cloud.nacos.discovery.username=XXX-Dspring.cloud.nacos.discovery.password=XXX-jar  /home/admin/XXX/XXX.jar> /home/admin/XXX/XXX.log >&1 &
jps -l

echo -- log : 项目启动成功 - XXX

在这里插入图片描述

8、保存后点击立即构建

在这里插入图片描述

三、构建服务是否成功

1、失败结果

在这里插入图片描述

2、成功结果

在这里插入图片描述

四、查看服务是否启动

1、查看端口号

①查询端口是否开启

firewall-cmd --add-port=端口号/tcp

②开放端口(端口号和项目中配置的端口号一致)

firewall-cmd --zone=public --add-port=端口号/tcp --permanent

③重启防火墙

firewall-cmd --reload

在这里插入图片描述

2、查看服务是否启动

①、查看Java进程

#查看进程
ps aux|grep java

在这里插入图片描述

说明服务没有启动成功(项目没有启动成功,也会导致不打日志),那我们需要手动进行启动项目,看是否可以成功

#运行项目
java -jar XXXXXXX.jar

在这里插入图片描述

出现Could not find or load main class错误,那我们就可以排除不是配置Jenkins流水线的问题。

②、解决启动jar包,报错找不到主启动类Could not find or load main class

在项目的pom.xml文件中,添加以下内容

<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>
  </plugins>
</build>

添加完之后,提交代码,进行构建,构建成功后,我们可以再次查看Java进程,可以看到正在运行的jar包

ps aux | grep java

在这里插入图片描述

五、运行服务

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱吃芋圆的兔子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值