当前位置:   article > 正文

Jenkins+git+maven持续集成持续部署java项目(CI/CD)_git maven cicd

git maven cicd


一. jenkins的作用

chi
在这里插入图片描述


二.安装

官网下载地址: https://www.jenkins.io/download/
本人采用下载war,上传服务器直接运行方式.
在这里插入图片描述

nohup java -jar Jenkins\ 2.346.3\ LTS.war  &
  • 1

Jenkins初始化文件路径在下图中: 初始化密码也如图所示
在这里插入图片描述

初始化密码: 如上图
访问 ip:8080 (注意服务器提供商防火墙和系统防火墙放行)
一系列傻瓜安装后
在这里插入图片描述


三.maven安装

也可以在jenkins安装后,通过jenkins自动配置安装
我们需要借助jenkins自动拉取远程仓库或私服中的代码做持续部署.那么就要下载maven管理本地jar供以java代码运行.
在这里插入图片描述
需要提前配置好java环境变量
在这里插入图片描述

四.git安装

也可以在jenkins安装后,通过jenkins自动配置安装
Jenkins需要拉取测试远程仓库代码

yum install -y git 
  • 1

在这里插入图片描述

五. jenkins官方中文文档

jenkins文档

六. 集成

利用jenkins 集成maven快速拉取部署项目

在这里插入图片描述
安装完毕后 配置全局环境(注意gittee需要安装插件并配置全局环境)

git凭证账户配置
在这里插入图片描述
全局maven配置
在这里插入图片描述

构建item项目
在这里插入图片描述
gitee配置

在这里插入图片描述

pom配置
在这里插入图片描述

七.配置自动化发布测试

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

在这里插入图片描述
现在大多数代码托管平台不支持http 账号密码拉取。建议采用ssh拉取
需要现在jenkins的服务器上安装git,然后配置jenikins全局配置ssh密钥,在github上配置公钥
在这里插入图片描述

回到item中配置
在这里插入图片描述
在这里插入图片描述

预期传输超时时间
在这里插入图片描述

八.端口冲突解决

在这里插入图片描述
添加上传前置动作.删除之前jar及其进程.
使用了public over ssh插件需要在执行命令之前

#刷新配置
source /etc/profile
# 防止jenkins杀死未执行完毕的sh脚本
BUILD_ID=dontKillMe
#执行脚本,删除jar包,杀死进程
sh /root/jarpackage/vector-start.sh vector-admin

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

一般可以通过执行远程shell脚本. shell脚本编译好删除的内容及项目进程

#!bin/bash

# 删除项目jar
rm -rf /root/jarpackage/vector-admin.jar
if [ -z $1 ];
        then
                echo "The args cannot be empty"
        else
                appname=$1
fi
# 执行脚本传入的参数是项目名称  ./resetJar.sh xxxx项目名
echo "arg:$1"


# 过滤出正在执行的jar程序的pid
pid=`ps -ef | grep $1 | grep 'java -jar' | awk '{printf $2}'`
echo $pid
# 如果pid为空,不执行杀进程
if [ -z $pid ];
        then
                echo "$appname not started!"
        else
                kill -9 $pid
                echo "$appname stop success!"
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

九.构建触发器

目的为了解决代码变动自动构建.(不常用,总不能提交一次构建一次. )
在这里插入图片描述
若一些代码托管平台没有回调钩子.我们可以通过jenkins的定时任务回调代码托管平台
身份验证令牌,让远程仓库回调jenkins方式
安装插件

设置回调Jenkins令牌
在这里插入图片描述
Use the following URL to trigger build remotely: JENKINS_URL/job/vectorProject-server/build?token=TOKEN_NAME 或者 /buildWithParameters?token=TOKEN_NAME Optionally append &cause=Cause+Text to provide text that will be included in the recorded build cause.

在这里插入图片描述

在这里插入图片描述

十.邮件通知

告知相关人员构建时的情况.
jenkins全局配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

闽ICP备14008679号