GitLab16.8配置webhooks、Jenkins2.4配置GitLab插件实现持续集成、配置宝塔面板实现持续部署(其三)

看本篇文章的前提是已经部署完GItlab和Jenkins服务器,已经可以手动构建成功,并且经过了很多次实践,对这两款软件基本熟悉。

建议大家按以下顺序看
前端自动化(其一)部署gitlab

前端自动化(其二)部署jenkins、配置环境、连接gitlab

前端自动化(其三)持续集成和持续部署(本章!)

  1. Jenkins上下载GitLab插件
    在这里插入图片描述

  2. 进入任务配置页面
    在这里插入图片描述

  3. 进入Gitlab生成访问令牌
    在这里插入图片描述

  4. 回到Jenkins添加这个刚生成的token
    在这里插入图片描述

  5. 进入系统设置,配置Gitlab标签内容
    在这里插入图片描述

  6. 返回Pipeline任务 点击配置 发现已经出现了刚才配置的gitlab token凭据
    在这里插入图片描述

  7. 顺便生成Secret 令牌 一会填进gitlab webhooks
    在这里插入图片描述

  8. 进入gitlab 指定项目内 配置webhooks
    在这里插入图片描述

  9. 配置好webhooks 并且测试连接 200说明Jenkins已经开始构建了
    在这里插入图片描述

  10. 已经自动触发构建
    在这里插入图片描述

  11. 现在只要一向Gitlab推代码 就会触发Jenkins 的自动构建。

  12. 在jenkins服务器上安装宝塔面板,一会准备部署(将jenkins自动构建的项目粘贴到宝塔面板www/wwwroot/文件夹下)。
    https://www.bt.cn/new/download.html
    在终端上输入命令安装宝塔
    if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_panel.sh;else wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh;fi;bash install_panel.sh ed8484bec

  13. 安装宝塔会自动配置防火墙,然后在服务器防火墙上放行 8088(Jenkins网站)和即将部署的其他网站端口。
    在这里插入图片描述

  14. 安装指定插件后新建站点。
    在这里插入图片描述

  15. 之后我们在本地只要将代码推送到我们的Gitlab服务器上,就会自动触发构建,并将构建出来的文件复制到网站根目录。
    在这里插入图片描述

pipeline {agent anystages {stage('Checkout') {steps {// 拉取代码 (IP地址项目名字从Gitlab上获取)git 'ssh://git@198.4.1.1:8822/qg-react-wheel/qg-iterative-react-temp.git'}}stage('Build') {steps {// 安装依赖并构建项目sh 'yarn'sh 'yarn build'// 确保目标目录存在,如果不存在则创建sh 'mkdir -p /www/wwwroot/qg-iterative-react-temp/'// 将dist文件夹内容复制到当前服务器的指定路径sh 'cp -r dist/* /www/wwwroot/qg-iterative-react-temp/'}}}post {always {// 这里可以添加构建后的操作,比如清理、发送通知等echo 'temp-success'}}
}

在这里插入图片描述

经验积累: gitlab备份恢复后 其实并不能恢复100% 的数据

ERROR: Error cloning remote repo 'origin' 这个错误 有很多种解决方案,对于gitlab备份恢复的情况都不行,需要在Jenkins服务器上git clone ssh~~~ 以下 输入yes 后就好了。。。

希望大家都能够厚积薄发。

祝大家学习和工作愉快

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

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

相关文章

05.领域驱动设计:认识领域事件,解耦微服务的关键

目录 1、概述 2、领域事件 2.1 如何识别领域事件 1.微服务内的领域事件 2.微服务之间的领域事件 3、领域事件总体架构 3.1 事件构建和发布 3.2 事件数据持久化 3.3 事件总线 (EventBus) 3.4 消息中间件 3.5 事件接收和处理 4、案例 5、总结 1、概述 在事件风暴&a…

百川智能发布超千亿大模型Baichuan 3

1月29日,百川智能发布超千亿参数的大语言模型Baichuan 3。在多个权威通用能力评测如CMMLU、GAOKAO和AGI-Eval中,Baichuan 3都展现了出色的能力,尤其在中文任务上更是超越了GPT-4。而在数学和代码专项评测如MATH、HumanEval和MBPP中同样表现出…

【Delphi】系统菜单中增加菜单项

目录 一、问题提出 二、程序截图 ​编辑 ​编辑 三、程序代码: 一、问题提出 我们在开发windows程序的时候,可能会希望在窗体的系统菜单中增加一个菜单项,那么如何实现呢,实际上通过调用windows API是可以实现的,…

go学习之air库的使用

首先下载air库 go install github.com/cosmtrek/air之后你需要去找到库下载的地方,若使用的是go mod可以使用命令 go env GOPATH找到下载库的位置 进入后,有bin,pkg目录,进入bin目录,你能看到air.exe文件 这时候将此…

备战蓝桥杯---二分(入门)

话不多说,先来个模板题来回顾一下上次讲的: 下面是AC代码: 下面进入正题: 本题对1,2行与3,4行组合,再用二分查找即可实现n^2logn的复杂度。 下面是AC代码: 接题: 让我们…

【更新】中国各省市是否属于“宽带中国”试点及“千兆城市”DID数据(2010-2023)

一、数据介绍 数据名称:【更新】中国各省市是否属于“宽带中国”试点及“千兆城市”DID数据 数据范围:全国所有地市 数据年份:2010-2023年 数据来源: “宽带中国”试点城市,来自工信部和国家发改委在2014年、2015…

幻兽帕鲁个人服务器怎么创建?

成功创建幻兽帕鲁服务器教程分享,阿里云和腾讯云均可以,总花费32元即可获得一台换手帕服务器4核16G配置,32人幻兽帕鲁服务器,阿腾云atengyun.com分享当前头部云厂商的Palworld服务器搭建教程,亲测可以! 阿…

【JavaScript基础入门】05 JavaScript基础语法(三)

JavaScript基础语法(三) 目录 JavaScript基础语法(三)数组概述数组语法多维数组 操作数组修改数组获取数组长度数组和字符串之间的转换添加和删除数组项 Null 和 Undefined字符串连接字符串字符串转换获取字符串的长度在字符串中查…

代码随想录刷题笔记-Day13

1. 二叉树的层序遍历 102. 二叉树的层序遍历https://leetcode.cn/problems/binary-tree-level-order-traversal/层次遍历依靠队列的先进先出特点实现。 解题思路 层序遍历的本质就是对每一个pop出来的处理节点,处理后把他的左右节点放进去。 对于每一层来说&…

Hutool改变我们的coding方式(四)

Hutool改变我们的coding方式 1、随机工具RandomUtil2、唯一ID工具IdUtil3、身份证工具IdcardUtil4、信息脱敏工具DesensitizedUtil 测试代码地址:https://gitee.com/Augenstern-creator/kuang-study_-hutools 1、随机工具RandomUtil RandomUtil主要针对JDK中Rando…

技法和原理:如何找到你需要的菜单项?

你一定碰到过查找某个菜单项的场景,通常我们会使用类似于 GetMenuItemInfo 这样的菜单函数, 在这类函数中,有一个参数允许你指定要查找的菜单项目的信息:MF_BYPOSITION 或者 MF_BYCOMMAND。 至此,是不是很眼熟了。今天…

一定用得到的时频分析方法!广义S变换、小波变换、短时傅里叶变换(STFT)、Wigner-Ville 分布,直接运行!

适用平台:Matlab2020版本及以上 在实际应用中,时频分析通常与机器学习/深度学习技术结合,以提高故障识别的性能。时频分析可以捕捉信号在时间和频率上的瞬时变化,有助于检测到与故障相关的瞬时特征,如脉冲、振动或其它…

༺༽༾ཊ—Unity之-05-抽象工厂模式—ཏ༿༼༻

首先创建一个项目, 在这个初始界面我们需要做一些准备工作, 建基础通用文件夹, 创建一个Plane 重置后 缩放100倍 加一个颜色, 任务:使用 抽象工厂模式 创建 人物与宠物 模型, 首先资源商店下载 人物与宠物…

智能语音识别源码系统+语义理解+对话管理+语音合成 带完整的搭建教程

人工智能技术的不断发展,智能语音识别技术逐渐成为人们日常生活和工作中不可或缺的一部分。然而,目前市场上的智能语音识别产品大多存在一定的局限性,如识别率不高、功能单一等。为了解决这些问题,罗峰给大家分享一款基于智能语音…

Ps:段落面板

Ps菜单:窗口/段落 Window/Paragraph Ps菜单:文字/面板/段落面板 Type/Panels/Paragraph Panel 对于“点文本”,默认一行为一个段落。每按一次回车键,就多出一个段落。 对于“段落文本”,一段可能有多行,具体…

汽车网络安全管理体系框架与评价-汽车网络安全管理体系评价

当前 , 随若汽车联网产品渗透率、 智能传感设备搭载率的提升, 以及汽车与通信、互联网等行业的融合创新发展, 汽车行业面临愈发严峻的网络安全风险, 对消费者人身财产安全、 社会安全乃至国家安全产生威胁, 是产业发展…

多智能体强化学习--MAPPO(pytorch代码详解)

标题 代码详解Actor和Critic网络的设置 代码详解 代码链接(点击跳转) Actor和Critic网络的设置 基本设置:3个智能体、每个智能体观测空间18维。Actor网络:实例化一个actor对象,input-size是18Critic网络&#xff1…

产品解读 | 新一代湖仓集存储,多模型统一架构,高效挖掘数据价值

星环科技TDH一直致力于给用户带来高性能、高可靠的一站式大数据基础平台,满足对海量数据的存储和复杂业务的处理需求。 同时在易用性方面持续深耕,降低用户开发和运维成本,让数据处理平民化,助力用户以更便捷、高效的方式去挖掘数…

Python tkinter (9) ——Menu控件

本文主要是Python tkinter Menu菜单控件介绍及使用示例。 tkinter系列文章 python tkinter窗口简单实现 Python tkinter (1) —— Label标签 Python tkinter (2) —— Button标签 Python tkinter (3) —— Entry标签 Python tkinter (4) —— Text控件 Python tkinter (5…

计算机毕业设计 基于SpringBoot的校园闲置物品交易系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…