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


一. jenkins的作用

chi
在这里插入图片描述


二.安装

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

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

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

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


三.maven安装

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

四.git安装

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

yum install -y git 

在这里插入图片描述

五. 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

一般可以通过执行远程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

九.构建触发器

目的为了解决代码变动自动构建.(不常用,总不能提交一次构建一次. )
在这里插入图片描述
若一些代码托管平台没有回调钩子.我们可以通过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全局配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

最难不过坚持丶渊洁

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

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

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

打赏作者

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

抵扣说明:

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

余额充值