Jenkins + gitlab 自动部署

这篇具有很好参考价值的文章主要介绍了Jenkins + gitlab 自动部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 背景

作为后台开发,每次我们开发完或者修改一个bug后都要手动合并,打包或者连接服务器执行打包部署命令,每次手动操作,极大的影响了我们的开发效率,那么有没有一款工具能让我们只需要推送/合并代码到远端就能实现服务自动打包,发布,部署,通知呢。因此,今天介绍的jenkins和gitlab就来了。

2. jenkins介绍

这里简介和安装就省略了,各位可以自行百度/谷歌学习下,它在我们的自动部署方案里做的重要角色就是打包,发布,部署,通知

3. gitlab介绍

做为“程序猿”的我们,相信这款工具也不会陌生,代码管理开源项目

4. 自动部署流程

4.1 流程图

4.2 各部分详解

  1. 开发推送/合并代码到我们的部署分支
  2. 代码推送到部署分支后,触发我们的推送事件,然后调用jenkins的部署任务
  3. jenkins收到部署通知后,调用企业微信的webhook发送消息,“XX项目开始部署”
  4. jenkins通过git插件拉取gitlab对应分支的代码
  5. maven打包
  6. 第五步maven打包完成后,如果是部署在宿主机服务器,则通过ssh推送jar包到对应的服务器上,并执行重启命令
  7. 最后发送企业微信通知部署完成,耗时多少。

4.3 实际操作

  1. 好了,各部分的已经大致介绍完成了,下面我们通过一个小的demo来完成我们的实际操作

  2. 推送代码到远程分支这块我们就不用说了

  3. gitlab的推送事件介绍Jenkins + gitlab 自动部署,jenkins,gitlab,运维

    1. 我们选择对应项目的webhooks配置
    2. 触发事件,可以看到有多种事件,这里我们选择的是推送事件,并且我们配置的是develop分支的推送事件
    3. jenkins任务令牌
    4. jenkins的任务地址,这个和jenkins的任务令牌后续介绍

4.4 jenkins对应job部署

  1. 新建任务Jenkins + gitlab 自动部署,jenkins,gitlab,运维

  2. 填入任务名称,这里我们选择一个自由风格的任务Jenkins + gitlab 自动部署,jenkins,gitlab,运维

  3. 配置我们项目的gitlab地址Jenkins + gitlab 自动部署,jenkins,gitlab,运维

  4. 配置远程触发地址

    1. 选择构建触发器,并把该url填入我们的gitlab的webhooks事件的url中Jenkins + gitlab 自动部署,jenkins,gitlab,运维

    2. 点击高级,生成授权码, 并把授权码填入gitlab的webhooks令牌中Jenkins + gitlab 自动部署,jenkins,gitlab,运维

  5. 配置maven构建打包Jenkins + gitlab 自动部署,jenkins,gitlab,运维

  6. 配置ssh发包Jenkins + gitlab 自动部署,jenkins,gitlab,运维

  7. 配置企业微信通知Jenkins + gitlab 自动部署,jenkins,gitlab,运维

4.5 推送示例展示

可以看到,我们单个应用自动部署800+次了,开发只需要推送代码到远端,就会自动开始自动部署。Jenkins + gitlab 自动部署,jenkins,gitlab,运维

企业微信机器人通知,当然,如果不需要插件模板也可以通过其他可以发送http请求的来自定义发送通知内容。

5. 总结

今天我们介绍了整个jenkins+gitlab的自动部署流程,用了最简单的例子来说明,如果要部署多个服务器,我们也可以在构建的时候添加多个服务器,这里是串行部署的,如果需要并行部署的话我们也可以通过pipeline的parallel ssh_publishers命令执行并行部署;如果你用的是docker或者k8s部署项目的话,我们也可以把发包的步骤换成打包后构建镜像然后推送到harbor中,通过执行远程shell脚本部署docker,执行kuboard的ci/cd api来切换线上标签。文章来源地址https://www.toymoban.com/news/detail-517038.html

6. 附

  1. 各个jenkins步骤所用到的插件
    1. git及jdk配置, manage jenkins -> global tool configuration Jenkins + gitlab 自动部署,jenkins,gitlab,运维
    2. Maven 配置
      1. 新建maven,填入服务器上maven地址或者安装maven Jenkins + gitlab 自动部署,jenkins,gitlab,运维
    3. 其他插件
      1. manage jenkins -> Manager Plugin
        1. 企业微信通知插件 Qy Wechat Notification
        2. ssh推送插件 Publish Over SSH​​​​​​​

到了这里,关于Jenkins + gitlab 自动部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jenkins+Gitlab实现代码自动构建部署

    一、环境准备 主机名 ip 安装软件 jenkins 192.168.75.149 jenkins gitlab 192.168.75.147 gitlab web 192.168.75.155 部署应用 二、jenkins服务器配置 1、生产公钥 (2)获取公钥信息 公钥信息在配置 Gitlab SSH Keys 时用到。 (3)获取私钥信息 私钥信息在配置 Jenkins Publish over SSH 时用到。 (4)复制公

    2024年02月16日
    浏览(60)
  • Gitlab+Jenkins自动化部署,解放双手

    ​ 在部署项目前需要对源码进行打包,一个简单的SpringBoot项目默认是打包为jar包,也就是在pom.xml中的 packagingjar/packaging 方式,当然也会有一些打包成war包方式,使用外置的Tomcat应用服务器部署war包,那么就是 packagingwar/packaging 。 在父子类聚合项目中,父工程的 pom.xml 文件中

    2024年02月07日
    浏览(61)
  • Jenkins + Gitlab 实现项目自动化构建及部署

      通俗来讲就是本地项目 push 到 gitlab 后, Jenkins 能够识别到项目的更新并自动构建部署;  本文以实际操作的方式来表述详细配置过程及避开配置 Jenkins 时的坑. 默认电脑已经安装了虚拟机, 默认gitlab 上已经有了你想要部署的项目, 部署了 maven 和 jdk 并配置了环境变量!!! 1 执行

    2024年02月16日
    浏览(54)
  • Gitlab + Docker + Jenkins + Harbor实现自动化部署

    目录 文章目录 前言 一、第一台服务器--Jenkins 1、安装前 2、安装Jenkins 3、修改正在跑容器的端口 4、Jenkins内部插件和配置  二、第二台服务器--Harbor 1、安装docker-compose 2.安装及配置 3、卸载Harbor  4、Harbor启动后操作 三、第三台服务器--生产环境  1、配置私服地址 四、Jenkin

    2024年02月14日
    浏览(56)
  • DevOps极速入门丨Gitlab丨Jenkins丨harbor丨CICD丨自动化丨运维开发

    一、DevOps介绍 软件开发最开始是由两个团队组成: 开发计划由开发团队从头开始设计和整体系统的构建。需要系统不停的迭代更新。 运维团队将开发团队的Code进行测试后部署上线。希望系统稳定安全运行。 这看似两个目标不同的团队需要协同完成一个软件的开发。 在开发

    2023年04月18日
    浏览(64)
  • Jenkins+Maven+Gitlab+Tomcat 自动化构建打包,部署

    1、安装服务 Jenkins工具、环境、插件配置 全局变量配置 Manage JenkinstoolsJDK 安装 安装插件 Deploy to container 安装此插件,才能将打好的包部署到tomcat上     配置国内mvn源 创建maven项目 1  2   3    4    5    6    7    8     9 10  

    2024年02月05日
    浏览(54)
  • Jenkins+GitLab+Docker搭建前端自动化构建镜像容器部署

    前言 🚀 需提前安装环境及知识点: 1、Docker搭建及基础操作 2、DockerFile文件描述 3、Jenkins搭建及基础点 🚀 目的: 将我们的前端项目打包成一个镜像容器并自动发布部署,可供随时pull访问 1、在当前项目的根目录创建Dockerfile文件并写入如下代码: 代码片段详细描述: 注意

    2024年02月05日
    浏览(70)
  • Jenkins+GitLab+Docker搭建前端自动化构建镜像容器部署(无本地证书,映射证书)

    前言 🚀 需提前安装环境及知识点: 1、Docker搭建及基础操作 2、DockerFile文件描述 3、Jenkins搭建及基础点 🚀 目的: 将我们的前端项目打包成一个镜像容器并自动发布部署,可供随时pull访问 1、在当前项目的根目录创建Dockerfile文件并写入如下代码: 代码片段详细描述: 注意

    2024年02月15日
    浏览(54)
  • 2023全网最细最全保姆级gitlab+Jenkins+maven自动化部署springboot项目教程

    如果没有Linux基础请仔细看好每一个步骤,避免出错,从0到1带你搭建自动化部署环境,包括服务器安装,自动化部署所需各类软件安装配置,详细贴出每一步,不断步骤,让你一次搭建部署完成,希望这篇文章能给大家带来一定的帮助,话不多说开始整 2.0 CentOs安装 2.0.1 下载VM虚拟机 我直

    2024年02月08日
    浏览(57)
  • Jenkins自动化部署-GitLab拉取代码 配置ssh代码拉去方式的密钥(公私钥)

    Jenkins想要通过ssh方式拉去gitlab代码,则需要在在Jenkins服务器配置私钥,gitlab服务器配置公钥 使用root用户生成公钥和私钥 在/root/.ssh/目录保存了公钥和使用 id_rsa:私钥文件 id_rsa.pub:公钥文件 把生成的公钥放在Gitlab中 以root账户登录-点击头像-Settings-SSH Keys 复制刚才id_rsa.pu

    2024年04月10日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包