1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 【DevOps】Jenkins+Git+Gitlab+Sonar+Nexus实现持续集成

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

时间:2021-06-21 12:14:04

相关推荐

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

文章目录

什么是持续集成?CI/CD指的是什么?如何实现持续集成一、筹备工作,CentOS 7.6系统1、安装JDK,配置环境变量2、Maven下载3、Git安装4、GitLab安装5、Git密钥生成以及Gitlab配置6、Maven私服Nexus的搭建7、安装Jenkins8、Sonar安装教程 二、实现持续集成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安装教程

包含添加Sonar和maven等相关插件

8、Sonar安装教程

传送门:SonarQube安装教程

二、实现持续集成

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已经正在构建了,说明分布式构建生效!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。