欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

【DevOps】Jenkins+Git+Gitlab+Sonar+Nexus实现持续集成

时间:2023-07-22
文章目录

什么是持续集成?CI/CD指的是什么?如何实现持续集成一、筹备工作,CentOS 7.6系统

1、安装JDK,配置环境变量2、Maven下载3、Git安装4、GitLab安装5、Git密钥生成以及Gitlab配置6、Maven私服Nexus的搭建7、安装Jenkins 二、实现持续集成

1、以前的手动集成2、Hook触发自动构建3、流水线Pipeline4、分布式构建 什么是持续集成?CI/CD指的是什么?

CI(Continuous Integration)指的是持续集成,
CD指的是持续交付(持续部署)
持续交付(Continuous delivery)指的是,频繁地将软件的新版本,交付给质量团队或者用户,以供评审。
持续部署(continuous deployment)是持续交付的下一步,指的是代码通过评审以后,自动部署到生产环境。

为什么需要持续集成呢?

为了提高效率。

如何实现持续集成

本文将使用Jenkins+Git+Gitlab+Sonar+Nexus实现持续集成。

一、筹备工作,CentOS 7.6系统

就全部使用我写过的文章啦,哈哈哈哈,步骤真的很细

1、安装JDK,配置环境变量

传送门:JDK安装和配置 - 全系统教程(CentOS&Mac&Windows)

2、Maven下载

传送门:Maven的安装配置

3、Git安装

官网传送门:Git - Downloads

4、GitLab安装

传送门:Centos7.6安装Gitlab

5、Git密钥生成以及Gitlab配置

传送门:Git密钥生成以及Gitlab配置

6、Maven私服Nexus的搭建

传送门:使用Nexus搭建Maven私服

7、安装Jenkins

传送门:Jenkins安装教程

二、实现持续集成 1、以前的手动集成

定时表达式含义

* * * * * --五个字段分 时 天 月 周

构建环境

Delete workspace before build starts:在构建之前清空工作空间Abort the build if it's stuck:如果构建出现问题则终止构建Add timestamps to the Console Output:给控制台输出增加时间戳Use secret text(s) or file(s):使用加密文件或者文本

执行shell

#!/bin/bashmv target/*.jar /root/demo/cd /root/demoBUILD_ID= java -jar springboot-demo.jar >log 2>&1 &

2、Hook触发自动构建

安装Gitlab钩子。Jenkins - 插件管理
点开指定的Jenkins任务 - 配置 - 构建触发器的位置多了一个
选择Enabled Gitlab triggers的时间,并且复制出来下图中的url,用于gitlab配置

点开高级,选择generate生成一个token,复制出来,gitlab会用

复制token
第一步点开Admin,第二步打开Setting打钩,save change 打开指定的项目,integrations
填写URL和token

Add WebHook就完事! 3、流水线Pipeline

比较复杂的一些工程,使用代码进行配置,主要使用的语言是Groove

安装插件打开Open Blue Ocean
使用这个蓝海进行创建流水线。配置方法和新建一个任务大体一致,细不谈。 4、分布式构建

当我们Jenkins的任务太多忙不过来,需要更多的空余机器帮忙执行构建,就需要配置多节点。
系统管理 - 管理节点 - 新建节点
填写相应信息
显示离线

原因是因为没有配置它的jdk路径,重新打开设置。点开高级。
配置新的任务

可以看到test2已经正在构建了,说明分布式构建生效!

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。