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实现自动构建部署

  • 前言
  • 什么是Webhooks
  • Webhooks的工作原理
  • 开始配置Jenkins
  • 开始配置Gitee
  • 结语

前言

上一章节中我们已经学习从自己编写简单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 实战教程(六)- 配置邮箱接收构建通知

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/14358.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Packet Tracer-HSRP+DHCPv4+VLAN间路由+以太通道综合实验

实验拓扑: 实验内容: VLAN及VLAN间路由的配置,以太通道的配置,STP的根调整,DHCPv4的配置,首跳冗余HSRP的配置。 实验最终结果: PC可以自动获取到DHCP-Server分配的IP地址,实现首跳…

【Sentinel】Sentinel配置zk持久化

代码 import cn.hutool.core.util.StrUtil; import com.alibaba.csp.sentinel.datasource.ReadableDataSource; import com.alibaba.csp.sentinel.datasource.zookeeper.ZookeeperDataSource; import com.alibaba.csp.sentinel.slots.block.degrade.DegradeRule; import com.a…

信息系统工程师--八大绩效域-交付绩效域

信息系统工程师的八大绩效域包括:干系人、团队、开发方法和生命周期、项目工作、规划、交付、度量、不确定性。 预期目标 1、项目有助于实现业务目标和战略 2、项目实现了预期成果 3、在预定时间内实现了项目收益 4、项目团队对需求有清晰的理解 5、干系人接受…

GitLab的原理及应用详解(五)

本系列文章简介: 随着软件开发的不断进步和发展,版本控制系统成为了现代软件开发过程中不可或缺的一部分。而GitLab作为其中一种流行的版本控制工具,在软件开发领域享有广泛的应用。GitLab不仅提供了强大的版本控制功能,还集成了项目管理、持续集成和部署、代码审查等多个功…

web学习笔记(五十七)

目录 1. 面试题总结 1.1 public和assets区别 1.2 vite的作用 1.3 vue单页面应用 1.4 组件分为两种类型: 1.5 App.vue文件 1.6 main.js 1.7 vue2中为什么不能直接监听到数组的改变? 2. .vue页面的组成 3. ref 响应式数据 1. 面试题总结 1.1…

Web3革命:探索科技与物联网的无限可能

引言 Web3时代正在悄然而至,带来了对互联网的彻底颠覆和改变。作为互联网的下一代,Web3不仅是技术革新的延续,更是对传统互联网模式的重新构想。在这个新时代,科技与物联网的结合将迎来无限的可能性,将探索到一片全新…

iOS系统故障怎么办?这三种苹果手机系统修复方法你一定要知道

随着苹果手机使用时间越长,苹果手机有时也会出现系统问题,如卡顿、崩溃、无法启动等。这些问题不仅影响用户的使用体验,还可能导致数据丢失。因此,掌握苹果手机系统修复方法显得尤为重要。本文将详细介绍苹果手机系统修复的常见方…

Leetcode 3153. Sum of Digit Differences of All Pairs

Leetcode 3153. Sum of Digit Differences of All Pairs 1. 解题思路2. 代码实现 题目链接:3153. Sum of Digit Differences of All Pairs 1. 解题思路 这一题的话只需要统计一下每一个位上0-9各自出现了多少次即可。 然后,对于每一位,答…

数仓领域,Serving 是什么概念?

在数据仓库(Data Warehouse)和更广泛的数据工程领域中,“Serving”通常指的是将处理和优化后的数据提供给最终用户或应用程序的过程。这包括数据的查询、检索、展示等操作,使得数据能够在决策支持、报告、分析、或机器学习等应用中…

大模型之Ollama:在本地机器上释放大型语言模型的强大功能

LlaMA 3 系列博客 基于 LlaMA 3 LangGraph 在windows本地部署大模型 (一) 基于 LlaMA 3 LangGraph 在windows本地部署大模型 (二) 基于 LlaMA 3 LangGraph 在windows本地部署大模型 (三) 基于 LlaMA…

实战Java虚拟机-实战篇

一、内存调优 1.内存溢出和内存泄漏 内存泄漏(memory leak):在Java中如果不再使用一个对象,但是该对象依然在GC ROOT的引用链上,这个对象就不会被垃圾回收器回收,这种情况就称之为内存泄漏。内存泄漏绝大…

一番赏小程序开发,为玩家带来线上抽赏魅力

随着人们对娱乐消费的增加,以及二次元文化的快速发展,以动漫IP为主的一番赏受到了越来越多的年轻人关注,一番赏市场迎来了黄金发展期! 一番赏的运营模式是以“限量”为主,不管什么商品数量都是有限的,因此…

微软刚发布的Copilot+PC为什么让Intel和AMD尴尬?2024 AI PC元年——产业布局及前景展望

美国东部时间5月20日在微软位于华盛顿的新园区举行的发布会上,宣布将旗下AI助手Copilot全面融入Windows系统,能够在不调用云数据中心的情况下处理更多人工智能任务。 “将世界作为一个提示词就从Windows系统开始”。微软的新PC将是“CopilotPC”&#xf…

[Algorithm][回溯][记忆化搜索][最长递增子序列][猜数字大小Ⅱ][矩阵中的最长递增路径]详细讲解

目录 1.最长递增子序列1.题目链接2.算法原理详解3.代码实现 2.猜数字大小 II1.题目链接2.算法原理详解3.代码实现 3.矩阵中的最长递增路径1.题目链接2.算法原理详解3.代码实现 1.最长递增子序列 1.题目链接 最长递增子序列 2.算法原理详解 题目解析:从每个位置&am…

内部类知识点

什么是内部类? 内部类何时出现?B类是A类的一部分,且B单独存在无意义 内部类分类 成员内部类: 当内部类被private修饰后,不能用方法2 调用外部类成员变量 内部类里面有隐藏的outer this来记录 静态内部类 创建对象&…

警惕Mallox勒索病毒的最新变种hmallox,您需要知道的预防和恢复方法。

引言 : 在数字化时代,数据已成为企业和个人最宝贵的资产之一。然而,随着技术的不断发展,网络威胁也日益猖獗,其中.hmallox勒索病毒以其独特的加密手段和狡猾的传播方式,成为了网络安全领域的一颗“隐形炸弹…

水电集中抄表是什么?

1.定义分析:水电集中抄表 水电集中抄表是一种现代化能源管理体系方法,它利用先进的信息科技,如物联网技术、云计算等,完成对水电表数据的远程智能采集与处理。这种方法改变了传统的人工上门服务抄表方式,提高了效率&a…

Biome-BGC生态系统模型与Python融合技术实践应用

Biome-BGC是利用站点描述数据、气象数据和植被生理生态参数,模拟日尺度碳、水和氮通量的有效模型,其研究的空间尺度可以从点尺度扩展到陆地生态系统。 在Biome-BGC模型中,对于碳的生物量积累,采用光合酶促反应机理模型计算出每天…

ECharts实现地图飞线

echarts版本:https://echarts.apache.org/zh/changelog.html v5.x.x版本:不提供china.js和china.json文件 v4.x.x版本:使用npm安装echarts,默认包含china.js和china.json文件 目录 一、Html工程 二、vue工程 三、vue工程 四、矢…