jenkins + gitlab 自动部署(webhook)

Jenkins是一个流行的开源CI/CD工具,可以与Git等版本控制系统集成,实现自动构建、测试和部署。Webhook是一种机制,可以在Git仓库中设置,在代码提交或合并请求时触发Jenkins构建任务,以完成自动化部署。

实操

设备信息

|---------|-----------------|-------|
| jenkins | 192.168.231.241 | 6核12G |
| gitlab | 192.168.231.238 | 4核8G |

1. gitlab端远程仓库信息

2. 在Jenkins中创建一个新的构建任务。

3. 配置构建任务的参数,如源代码库地址、分支

选择gitlab远程仓库的URL

Credentials需要手动添加登录gitlab的用户及密码

观察远程从仓库的分支,如果是master就改成master

4. 构建触发器

接着

接着点击高级

点击Generate,生成秘密令牌,在gitlab的web端webhook需要用到

5. 在Git仓库中配置Webhook,将Webhook的URL设置为Jenkins构建任务的URL,并选择触发来源,如推送事件,代码提交、合并请求等。

底下最后一行有SSL验证,点击取消

令牌是之前在jenkins构建触发器,生成的秘密令牌

URL是在jenkins构建触发器是显示的

保存完后 点击测试 出现200则证明添加成功

错误提醒:如果出现选择webhook失败

解决办法:打开管理中心,网络设置

6.生成shell测试

在jenkins网页端

7. 开始构建测试,只要修改远程仓库的代码,jenkins端即自动构建

解析

webhook,避免了传统获取数据的拉的方式。不用本地不断用轮询的方式向对方服务器发送请求来知晓是否已经处理完成。而是给对方服务器提前设置好了hook url。这样地方在处理完成后就会给这个url发送请求结果了。采取的是推数据的方式。

webhook适用于开发测试环境,提交一次代码就构建一次,不建议在生产环境

相关推荐
运维开发王义杰1 小时前
YAML:锚点深度解析,告别重复,拥抱优雅的配置艺术
ci/cd·gitlab
破刺不会编程3 小时前
socket编程UDP
linux·运维·服务器·网络·c++·网络协议·udp
ayaya_mana4 小时前
Nginx性能优化与安全配置:打造高性能Web服务器
运维·nginx·安全·性能优化
我不要放纵10 小时前
docker
运维·docker·容器
morliz子轩10 小时前
基于WSL搭建Ubuntu 22.04.x LTS开发环境
linux·运维·ubuntu
BJ_Bonree10 小时前
数智先锋 | 告别运维黑盒!豪鹏科技×Bonree ONE构建全栈智能可观测体系
运维·科技
Janspran11 小时前
嵌入式linux学习 -- 进程和线程
linux·运维·学习
Cosmoshhhyyy11 小时前
linux远程部署dify和mac本地部署dify
linux·运维·macos
路多辛13 小时前
Debian新一代的APT软件源配置文件格式DEB822详解
linux·运维·ubuntu·debian
油丶酸萝卜别吃14 小时前
nginx配置代理服务器
运维·网络·nginx