自动构建(CICD)

自动构建(CICD)Docker、Kubernetes的CICD实现思路Jenkins是一个比较流行的持续集成工具GitLab是存储镜像的镜像仓库由客户端将代码push推送到git仓库,gitlab上配置了一个webHook的东西可以触发Jenkins的构建。进入到Jenkins虚线范围内,它所做的事情非常多,从mvn构建代码,对代码进行静态分析,做单元测试,测试通过之后就可以build镜像,镜像构建成功后…

大家好,又见面了,我是你们的朋友全栈君。

Docker、Kubernetes的 CICD实现思路
在这里插入图片描述
Jenkins是一个比较流行的持续集成工具
GitLab是存储镜像的镜像仓库

由客户端将代码push推送到git仓库,gitlab上配置了一个webHook的东西可以触发Jenkins的构建。进入到Jenkins虚线范围内,它所做的事情非常多,从mvn构建代码,对代码进行静态分析,做单元测试,测试通过之后就可以build镜像,镜像构建成功后就把镜像push推送到Harbor镜像仓库中,镜像push推送到镜像仓库后,我们就可以调用kubernetes集群的restAPI更新服务,而后kubernetes接收到了更新的指令,从Harbor镜像仓库pull拉取镜像,从而完成服务的更新与重启,最后我们从客户端来访问kubernetes集群的服务

1.开发从镜像库里获取基础镜像,对应用进行容器化开发;

2.开发提交代码到Gitlab(在Kubernetes中实现Gitlab服务,并通过持久化存储保存用户数据);

3.Gitlab收到代码提交请求后通过webhook触发Jenkins master

4.Jenkins master收到请求后在slave节点中对源码进行打包;

5.在源码打包完成后根据流水线,从Gitlab中获取dockerfile,在slave节点中生成docker images;

6.Docker镜像生成之后上传到Docker 私有仓库harbor;

8.通过Jenkins流水线在Kubernetes测试环境拉取镜像,部署应用;

9.测试成功之后,通过Jenkins流水线在Kubernetes生产环境进行应用的部署上线。

其中build镜像过程还可以细分为两部:

构建可执行的程序包(Java为tar包)
将tar包导入基础镜像(Java程序的基础镜像可以理解为一个包含了JDK的linux系统),其实现可以通过dockerfile导入tar包到基础镜像从而构建为应用镜像,也可以通过openshift的s2i启动一个名为build的pod将tar包的二进制流导入基础镜像然后通过docker commit构建为应用镜像

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135692.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 关于allow_url_fopen的设置与服务器的安全–不理解

    关于allow_url_fopen的设置与服务器的安全–不理解allow_url_fopen与安全以及PHPlibcurl  allow_url_fopen=ON常常会给服务器和管理员带来麻烦,但是经常性(至少我这样认为)的我们需要远程读取某个东西,如果设置allow_url_fopen=OFF将其关闭,我们就没有办法远程读取。  幸好我们有一个很好的PHP模块–curl。下面我就以一个例子说说我用curl远程读取的方法:  第一,a

    2022年7月21日
  • 可控制转速CSS3旋转风车特效

    以前制作网页动画一般使用javascript,现在已经有越来越多动动画使用纯CSS实现,并且动画的控制也可以使用CSS3实现,因为CSS3来了,CSS3的动画功能确实强大。以下是一个纯CSS3制作

    2021年12月28日
  • plsql 注册码「建议收藏」

    plsql 注册码「建议收藏」plsql下载地址https://www.allroundautomations.com/bodyplsqldevreg.html12.0.3.182164bit:注册码:ProductCode(产品编号):jtrexa75fat2mgcetfhx767laqrbtssqrkserialNumber(序列号):335566password:xs374ca12.0…

    2022年7月13日
  • 漫谈大数据 – 基于SparkSQL的离线数仓「建议收藏」

    漫谈大数据 – 基于SparkSQL的离线数仓「建议收藏」数据仓库,英文名称为DataWarehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。

    2022年10月25日
  • net framework 4.0安装失败0x80240037_0x80300001

    net framework 4.0安装失败0x80240037_0x80300001太~不容易了我一定要写个博客。网上的什么dism各种都试过了,都不行后来试了下面这个方法,还是不行,然后死马当活马医重启了一下,没有联网安了一遍,竟然奇迹般地装好了。Cortana中输入服务,回车后查看WindowsUpdate,AppReadiness,CryptographicServices,BackgroundIntelligentTransferService,Win…

    2022年9月12日
  • ORM框架Hibernate (二) 持久化对象的三种状态分析

    ORM框架Hibernate (二) 持久化对象的三种状态分析

    2021年8月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号