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

融资网站建设方案爱站网关键词挖掘机

融资网站建设方案,爱站网关键词挖掘机,wordpress插件 标签页,wordpress女生主题Devops 实践 基本概念jenkins实践安装jenkins仓库环境准备代码环境准备第一次构建持续集成持续部署集成插件 优秀实践心得体会 参考 摘要:本文首先将介绍一些基本概念,包括Devops,CI/CD等,然后基于知名开源CI/CD工具jenkins进行实…

Devops 实践

      • 基本概念
      • jenkins实践
        • 安装jenkins
        • 仓库环境准备
        • 代码环境准备
        • 第一次构建
        • 持续集成持续部署
        • 集成插件
      • 优秀实践
      • 心得体会
    • 参考

摘要:本文首先将介绍一些基本概念,包括Devops,CI/CD等,然后基于知名开源CI/CD工具jenkins进行实战。最后本文将简单介绍一些业界关于这方面的优秀实践,同时给出自己的一些见解和思路。
关键词: Devops,CI/CD,jenkins,质量门禁

基本概念

  1. devops
    devops这个词前半部分的dev是development的缩写,意指开发,ops是operations的缩写,意指运维,所以devops一般指一种软件开发思想,开发团队和运维团队要高效地协作、沟通和配合,或者干脆就变成一个团队,既是开发,又是运维。
  2. CI/CD
    CI/CD是英文单词continuous integration/continuous deployment的缩写,也就是指持续集成持续部署,也就是说要加快交付的速度,能够支持频繁的交付,在这种情况下,部署往往需要自动化部署。
  3. 质量门禁
    基于以上的一些概念,业界的一些研发平台会将开发测试发布抽象成一条流水线,一次代码上的变更经过这些阶段完成交付。在流水线上可以有很多的节点,比如在发布中,可以有编译节点、容器打包节点等等,可以在一些阶段插入一些卡点节点,通过预先定义的规则,如果某次代码变更在一些测试覆盖率、单元测试覆盖率上、流量回放diff率等指标,如果达不到预先定义的阈值,可以对这些变更进行拦截,从而起到阻止有一定风险的变更上线,这就是质量门禁。

jenkins实践

jenkins是知名的开源CI/CD的工具,本文介绍如何使用jenkins来自动持续部署和质量把关。

安装jenkins

笔者所使用的实验平台为ubuntu 20.04。

  1. 安装好java环境,命令如下:
sudo apt update && sudo apt install openjdk-17-jdk

通过java --version验证是否安装成功,安装成功输出如下:
在这里插入图片描述
2. jenkins官网下载war包
笔者下载的是最新的LTS版本,下载地址
运行是下载该war且运行该war包的命令,如下:

wget https://get.jenkins.io/war-stable/2.479.2/jenkins.war && java -jar jenkins.war --httpPort=8080

运行成功后输出中提示:
在这里插入图片描述
也就是说通过访问http://127.0.0.1:8080来访问jenkins,然后管理员的密码可以在某个文件中找到,访问这个网址,如下图:
在这里插入图片描述
输入密码进入如下界面:
在这里插入图片描述
选择安装建议的插件,因为jenkins只是一个平台,或者说是一个空的流水线,真正发挥作用的是流水线上的节点,也就是这里所说的插件。安装大概需要十分钟左右的时间,然后设置账户界面,要求设置一个管理员账户,这里可以选择跳过继续使用刚才的admin账户。
同理后面的一些设置也可以跳过,最终完成所有配置。如下:
在这里插入图片描述

仓库环境准备

我们希望达成的一个目标就是向代码仓库的分支提交代码时,能够自动发起编译测试构建部署等流程,这样就达到了持续集成持续部署的目的。在jinkens平台上,可以连接git仓库,包括github,gitee和直接搭建的gitlab等等。由于jinkens部署在内网,而这些多在外网上,因此需要在本地搭建一个简单的git代码仓库。我们选择Gogs这种轻量级的代码仓库作为工具,以下为如何安装Gogs的过程:
首先下载安装包和解压,命令为 wget https://dl.gogs.io/0.13.0/gogs_0.13.0_linux_amd64.tar.gz && tar -zxvf gogs_0.13.0_linux_amd64.tar.gz
然后输入命令cd gogs && nohup ./gogs web > /dev/null 2>&1 &后台启动,访问http://127.0.0.1:3000/进入安装配置界面,如下:
在这里插入图片描述
数据库选择sqlite3,然后进入如下界面:
在这里插入图片描述
完成注册后用该账户登录,来到如下界面,直接创建一个仓库
在这里插入图片描述

代码环境准备

为了和后面实践的一些插件保持一致,这里生成一个demo形式的maven管理的sprint-boot项目,资源连接。这是一个简单的spring boot项目,定义一个ping接口,返回pong,后续通过不断新增提交代码来触发jinkens的自动构建。
现在将这个项目的代码推送到gogs中,在git push origin master中,回提示输入用户名及密码,就是刚才注册的。
在这里插入图片描述
提交成功示意图如下:
在这里插入图片描述

第一次构建

回到jinkens的控制台,进行源代码相关的配置,如下图,配置为gogs仓库的地址和访问凭证。
在这里插入图片描述
然后点击build now进行第一次构建,如下图:
在这里插入图片描述
点击查看第一次构建的详情,如下:
在这里插入图片描述
可以看到,只是拉取了代码,要真正构建,需要直接写脚本来构建运行,如下图在配置中,增加构建步骤,选择执行脚本,然后脚本里只有一行命令,通过maven启动这个sprint-boot项目。保存后再次构建。
在这里插入图片描述
第一次构建成功,也确实可以正常访问相关接口。
在这里插入图片描述

持续集成持续部署

要想达到持续集成持续部署的目的,一般要配置触发器,能够让jinkens自动地开始部署。一般有三种方式,一个是关联其他项目,如果其他项目完成构建那么本项目开始构建;一个是定时构建;还有一个可能也是最常用的一个就是代码仓库有更新就构建。我们以最后一个进行相关的演示。
首先需要安装如下插件,在这里插入图片描述
回到项目的配置页面,配置构建触发器,如下图,可以看到,是需要代码仓库在代码更新时主动调用相关接口进行触发。
在这里插入图片描述
然后配置gogs,首先找到gogs的安装目录,进入custom/conf文件夹,修改app.ini文件,如下图,增加一个LOCAL_NETWORK_ALLOWLIST配置,其中,ip地址是jinkens所在的地址。
在这里插入图片描述
先重新启动,然后进入一下完整验证配置是否生效
在这里插入图片描述
然后在测试仓库中添加钩子,注意如果添加失败,请确保payload url的ip地址在上面配置的local network allowlist中。
在这里插入图片描述
然后更新代码,增加一个接口,提交到代码仓库,发现jinkens自动发起了一次构建,如下图所示:
在这里插入图片描述
至此达到了持续集成持续部署的目的。

集成插件

jinkens只是一个平台,真正有用的还是其内部丰富的插件。在以上的实践中,jinkens这条流水线只有一些编译、构建和部署节点,但其实还可以增加更多的节点,比如一些测试节点、门禁卡点节点、代码漏洞检查节点、发布周知节点等等。下面我们通过安装使用更多的插件来丰富我们这条自动发布构建流水线的功能。
首先是安装Allure自动化测试报告插件,如下图。
在这里插入图片描述
然后对allure插件进行相关配置,
在这里插入图片描述
最后对构建项目进行配置,在构建完项目后选择allure report。
在这里插入图片描述

优秀实践

心得体会

参考

  • 美团到店终端从标准化到数字化的演进之路
  • 持续集成09–Jenkins配置Sonar代码漏洞扫描工具
  • Jenkins官网
  • CI/CD 实践总结
http://www.hengruixuexiao.com/news/14407.html

相关文章:

  • 什么网站可以做数据调查问卷自学seo大概需要多久
  • 网站建设技术是干嘛的neotv
  • 家庭电脑做网站p站关键词排名
  • 西安做网站程序杭州网站运营十年乐云seo
  • b2b网站建设怎么做万能引流软件
  • 企业服务包括哪些方面搜索引擎排名优化seo课后题
  • 汉字市城乡建设规划局官方网站长沙网站seo方法
  • 淇县住房和城乡建设局网站海南百度推广公司有哪些
  • 网站的建设方案怎么写百度首页入口
  • 网站排名优化服务semir是什么牌子衣服
  • 西安建设工程信息网 人员信息优化问题
  • 大型网站二次开发方案网站维护费用一般多少钱
  • 网站如何做友情链接百度排行榜风云榜小说
  • 餐饮营销型网站案例分析网络销售的工作内容
  • 长沙建设企业网站郑州seo技术代理
  • wordpress apple主题合肥网站优化公司
  • 做自己看视频的网站百度手机管家
  • 淘宝客网站用什么软件做百度推广账户登录
  • 做网站用java还是php哪里注册域名最便宜
  • 什么网站做免单衣服深圳优化seo排名
  • 为什麼建网站要先做数据库今日特大新闻
  • 河北保定网站建设成人短期技能培训学校
  • 网站文章超链接怎么做百度竞价渠道户
  • 网页设计实训报告实训小结韶关网站seo
  • 重庆网站设计制作网站免费注册网址
  • 什么网站做ppt赚钱百度推广的优化软件
  • 找生意做那个网站靠谱汕头网站推广
  • 亚马逊怎么做网站推广什么是整合营销概念
  • 佛山网站建设公司电话百度快速排名点击器
  • 庐江魅力网做网站号码逆冬seo