当前位置:   article > 正文

jenkins+gitlab自动化部署springboot项目_jenkins 2.4

jenkins 2.4

jenkins+gitlab自动化部署springboot项目

1,前置条件

​ 需要最少两台服务器,一台部署gitlab代码仓库,另外一台部署jenlins进行项目测试而且需要安装jdk,maven,git环境

安装idk

// 上传压缩包,解压
tar -axvf /opt/software/jdk-8u271-linux-x64.tar.gz -C /opt/module

// 添加环境变量
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_271
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

// 测试
java -version
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

安装git

yum -y install git
也可以下载压缩包安装

默认安装位置为
/usr/bin/git
  • 1
  • 2
  • 3
  • 4
  • 5

安装maven

// 上传压缩包,解压
tar -axvf /opt/software/apache-maven-3.6.3-bin.tar.gz -C /opt/module

// 修改settings.xml配置文件使用阿里云镜像进行下载/opt/module/apache-maven-3.6.3/conf/settings.xml文件在下

// 配置环境变量
#MAVEN_HOME
export MAVEN_HOME=/opt/module/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

source /etc/peofile

// 测试
mvn -v
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

我的所有安装地址(后面有用)

java /opt/module/jdk1.8.0_271
maven /opt/module/apache-maven-3.6.3
git /usr/bin/git
  • 1
  • 2
  • 3

2,运行jenkins

// 上传war包,并且运行,需要进入war包所在目录
nohup java -jar jenkins.war >jenkins.log 2>&1 &

次指令会运行jenkins,运行之后会使当前窗口无法操作请不要ctr+c不然后结束进程,正确做法关闭当前shell窗口在开一个.可查看jenkins.log文件查看启动状态.记得打开8080,50000端口

  • 1
  • 2
  • 3
  • 4
  • 5

3,使用jenkins

1,直接访问ip+8080端口会进入到jenkins运行出页面,

2,第一次会需要从/root/.jenkins/secrets/initialAdminPassword中查看密码,直接复制密码粘贴即可

3,插件直接使用社区推荐等他安装完毕即可

v86WUU.png

4,配置maven和jdk,依次点击 Manager Jenkins ->Global Tool Configuration 详细配置如下

v8csiD.png

v8cTJg.png

v8cLyn.png

以上地址皆为自己服务器或者虚拟机上的软件安装目录,如果没有会进行提示

5,安装maven插件,依次点击 Manager Jenkins -> Manager Plugin,搜索此插件进行安装

v85MU1.png

4,创建一条item

1,点击新建item

v8vzWQ.png

2,配置gitlab

v8xJYD.png

添加一个可以访问到此仓库的账号

v8xdOI.png

选择需要部署的分支

v8xgpQ.png

3,安装publish over ssh插件

具体步骤请参考安装maven插件

vGSYMd.png

4,配置本机ssh server

依次点击 Manager Jenkins -> Configure System 拉到最下面修改如图

vGpCyd.png

5,配置构建前处理事件(杀死上一次构建运行的项目进程,防止端口占用)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1NIOpeDo-1660209084051)(…/AppData/Roaming/Typora/typora-user-images/image-20220811161100512.png)]

选择刚才配置的ssh server用户

vGp0mR.png

vGpoAP.png

preclear.sh.可自定义

#!/bin/bash

#删除历史数据
rm -rf xxoo

appname=$1
#获取传入的参数
echo "arg:$1"


#获取正在运行的jar包pid
pid=`ps -ef | grep $1 | grep 'java -jar' | awk '{printf $2}'`

echo $pid

#如果pid为空,提示一下,否则,执行kill命令
if [ -z $pid ];
#使用-z 做空值判断
        then
                echo "$appname not started"

        else
               kill -9 $pid
                echo "$appname stoping...."

check=`ps -ef | grep -w $pid | grep java`
if [ -z $check ];

        then
                echo "$appname pid:$pid is stop"
        else
                echo "$appname stop failed"
fi

fi
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
6,选择pom.xm文件地址(根据pom.xml文件在仓库中的地址来写)

vGpx7q.png

7,配置构建后处理事件(jenkins收到变动打包+运行jar)

vG9tEt.png

vGPFm9.png

5,gitlab提交代码,自动部署

1,下载插件

vGiIKg.png

2,配置项目出发器

vGFSr4.png

因为安装了插件所以当访问网址的时候就会出发重新构建

地址为: ip+8080(自定义端口请自行改变)/buildByToken/build?job=java-test(item名,当前流水线名称)&token=test(前面设置的)

我的地址 http://192.168.20.102:8080/buildByToken/build?job=java-test&token=test

3,gitlab配置

vGFDJ0.png

vGkFmQ.png

4,绑定gitlab wehooks

vGAw80.png

感谢你的观看,配置完成之后你就可以乱杀了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/551141
推荐阅读
相关标签
  

闽ICP备14008679号