当前位置: 首页 > news >正文

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.lryc.cn/news/291627.html

相关文章:

  • 鸿蒙会取代Android吗?听风就是雨
  • 检测CUDA 是否能访问GPU时回应速度慢【笔记】
  • 大模型运行成本对比:GPT-3.5/4 vs. 开源托管
  • fastadmin后台自定义按钮和弹窗
  • 《高性能MySQL》
  • postman用法
  • MySQL之数据库DQL
  • 《区块链简易速速上手小册》第9章:区块链的法律与监管(2024 最新版)
  • Spring Boot 中操作 Bean 的生命周期
  • Linux ---- Shell编程三剑客之AWK
  • Netty入门使用
  • go并发编程-runtime、Channel与Goroutine
  • HTTP概述
  • ubuntu20配置mysql8
  • CPU-Cache结构查看
  • Wireshark网络协议分析 - Wireshark速览
  • 查看进程创建的所有线程
  • 汽车软件开发模式的5个特点
  • 双屏联动系统在展厅设计中的互动类型与效果
  • STM32F407移植OpenHarmony笔记5
  • 点击其他区域隐藏弹出框效果
  • Python一些可能用的到的函数系列123 ATimer2-时间偏移
  • 企业微信主体变更 怎么操作?
  • 《区块链简易速速上手小册》第8章:区块链的技术挑战(2024 最新版)
  • 基于STM32的云上OneNET智慧大棚(包含程序设计报告)
  • 11.scala函数进阶
  • 在WebSocket中使用Redis出现空指针异常解决方案
  • 问题:第十三届全国人民代表大会第四次会议召开的时间是()。 #经验分享#知识分享#媒体
  • 《区块链简易速速上手小册》第10章:区块链的未来与趋势(2024 最新版)
  • JVM工作原理与实战(三十一):诊断内存泄漏的原因