2024最新 Jenkins + Docker 实战教程(五)- 配置Gitee Webhooks实现自动构建部署

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~

🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志

🎐 个人CSND主页------Micro麦可乐的博客

🐥《Docker实操教程》专栏以最新的Centos版本为基础进行Docker实操教程,入门到实战

🌺《RabbitMQ》本专栏主要介绍使用JAVA开发RabbitMQ的系列教程,从基础知识到项目实战

🌸《设计模式》专栏以实际的生活场景为案例进行讲解,让大家对设计模式有一个更清晰的理解

💕《Jenkins实战》专栏主要介绍Jenkins+Docker+Git+Maven的实战教程,让你快速掌握项目CI/CD,是2024年最新的实战教程

如果文章能够给大家带来一定的帮助!欢迎关注、评论互动~

Jenkins + Docker + Git + Maven 实战教程(五)- 配置Gitee Webhooks实现自动构建部署

前言

上一章节中我们已经学习从自己编写简单SpringBoot项目(根目录下编写Dockerfile)上传至Gitee,最后通过Jenkins实现自动化部署,可能有小伙伴会问,能不能我在提交代码至仓库的时候Jenkins就帮我们部署呢? 答案是肯定的,今天我们就来讲讲Webhooks

什么是Webhooks

Webhooks是一种基于HTTP协议的回调机制。当特定事件(如代码推送、Pull Request等)发生时,源系统会向预先配置的URL发送一个HTTP请求,以通知目标系统进行相应的操作。在CI/CD流程中,Webhooks常用于触发Jenkins构建任务。

Webhooks的工作原理

当代码仓库(如GitHubGitee)中的某些事件发生时,这些系统会向配置好的Jenkins URL发送HTTP请求。Jenkins接收到请求后,根据配置的JobPipeline,自动执行相应的构建、测试和部署任务。

开始配置Jenkins

以下以Gitee为例,详细讲解如何配置Webhooks。

首先我们在Jenkins控制台 -> 插件管理安装Gitee插件

安装好插件我们在 系统配置 设置一下Gitee,用于访问Giee仓库项目凭证

Gitee令牌生产如下

安装完成回到我们上一章节配置的 jenkins-demo 任务, 如果你还没了解上一章节的内容可以点击下方链接查阅:
2024最新 Jenkins + Docker 实战教程(四) - 编写自己的Springboot项目实现自动化部署

进入任务后 配置 -> 构建触发器 ,会发现多了一个Gitee Webhooks触发构建的选项

这里我们设置触发策略

Push: 仓库推送代码、推送 / 删除分支
Pull Request:新建、更新、合并

最后设置Gitee WebHook 密码

开始配置Gitee

通过 「仓库主页」->「管理页面」->「WebHooks」 添加 WebHook

URL:接收 WebHook 数据的 http 地址,Gitee会发送 Post 请求到这个地址。

WebHook 密码/签名密钥:保证安全以及识别数据来源
Tips:
URL以及密码根据刚才Jenkins中配置的Gitee Webhooks触发构建生成的信息填入

由于博主的教程是基于本机进行Jenkins的部署,即URL:
http://192.168.1.20:8080/gitee-project/jenkins-demo Gitee是无法POST到这个地址的,地址要填写公网的地址,或者有内网穿透工具也可以,这里我们需要借助一个 内网穿刺 工具来实现外网访问本地端口项目

大家可以参考 NeutrinoProxy,NeutrinoProxy(中微子代理) 一款基于solon、netty的内网穿透神器!同样也是基于Docker部署。

也可以使用一个在线免费的工具 : 访问地址 注册账号,申请免费通道

最后我们修改一下我们的SpringBoot代码,并提交仓库

观察Jenkins 构建历史,发现 Started by Gitee push by xxx 信息则证明通过Gitee WebHooks的推送实现了项目的自动化构建部署

最后访问一下我们的SpringBoot测试项目,测试成功!

结语

Webhooks是实现自动化构建与部署的重要工具,通过配置Webhooks,可以在代码仓库发生变更时,自动触发Jenkins执行相应的构建任务。通过本文介绍了Webhooks的使用方法,希望帮助小伙伴们更好地利用Webhooks提高开发效率和代码质量。

下一章节:2024最新 Jenkins + Docker 实战教程(六)- Jenkins配置邮箱接收构建通知

相关推荐
成都古河云1 小时前
智慧场馆:安全、节能与智能化管理的未来
大数据·运维·人工智能·安全·智慧城市
算法与编程之美1 小时前
文件的写入与读取
linux·运维·服务器
Amelio_Ming1 小时前
Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决
linux·运维·ssh
心灵彼岸-诗和远方1 小时前
Devops业务价值流:软件研发最佳实践
运维·产品经理·devops
JuiceFS2 小时前
好未来:多云环境下基于 JuiceFS 建设低运维模型仓库
运维·云原生
Ven%2 小时前
centos查看硬盘资源使用情况命令大全
linux·运维·centos
萨格拉斯救世主3 小时前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
Jtti3 小时前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows
yeyuningzi3 小时前
Debian 12环境里部署nginx步骤记录
linux·运维·服务器
EasyCVR4 小时前
萤石设备视频接入平台EasyCVR多品牌摄像机视频平台海康ehome平台(ISUP)接入EasyCVR不在线如何排查?
运维·服务器·网络·人工智能·ffmpeg·音视频