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 天前
云锁客户端连不上服务器处理
linux·运维·服务器
做运维的阿瑞1 天前
Linux 企业级备份体系实战:cron/anacron/restic/rclone 对比与脚本总结
linux·运维·服务器·后端·学习·系统架构·centos
wanhengidc1 天前
BGP高防服务器具体是指什么
运维·服务器·网络·安全·游戏·智能手机
2301_767902641 天前
10. Linux 系统启动原理
linux·运维·服务器
zrande1 天前
Linux 脚本实现[联网才工作]:拒绝离线分析的实用方案
运维·联网检测
☆璇1 天前
【Linux】Ext系列文件系统(下)
linux·运维·服务器
crackpot·1 天前
Linux 命令
linux·运维·服务器
所念皆为东辞1 天前
服务器时间同步校准
linux·运维·服务器
wanhengidc1 天前
云手机性能会受到哪些因素的影响?
运维·服务器·网络·游戏·智能手机
goldenocean1 天前
Ubuntu之旅-06 EMQX
linux·运维·ubuntu