持续集成:什么是持续集成(CI)持续交付(CD)和持续部署(CD)

Posted rexcheny

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了持续集成:什么是持续集成(CI)持续交付(CD)和持续部署(CD)相关的知识,希望对你有一定的参考价值。

持续集成、持续交付和持续部署

持续集成

Continuous Integration:持续集成,简称CI,是软件开发周期的一种实践,把代码仓库(Gitlab或者Github)、构建工具(如Jenkins)和测试工具(SonarQube)集成在一起,频繁的将代码合并到主干然后自动进行构建和测试。

技术图片

其实这里最关键的是自动化测试,这个是最难的,因为测试涉及内容很多。

持续交付

Continuous Delivery:持续交付,简称CD,是在CI的基础进行了扩展,在CI环节完成了软件构建和测试工作并形成了新的版本,那么接下来就要进行交付,而这里的交付并不是交付到生产环境,而是类生产环境(STAGING),我们可以理解为灰度环境或者预发环境,进而接受部分真实流量的测试。如果没有问题的话则通过手动的方式部署到生产环境。如下图所示:

技术图片

持续部署

Continuous Deployment:持续部署,简称CD,它是在持续交付的基础上打通最后一公里的工作,就是把手动部署到生产环境的方式升级为自动部署。看下图和上图在最后部署到生产环境中的区别。

技术图片

参考

The Product Managers’ Guide to Continuous Delivery and DevOps

持续集成、持续交付、持续部署

以上是关于持续集成:什么是持续集成(CI)持续交付(CD)和持续部署(CD)的主要内容,如果未能解决你的问题,请参考以下文章

敏捷,持续集成/持续交付, DevOps 三者的区别

CICD - 持续集成与持续交付

04: CI(持续集成)/CD(持续交付/持续部署)

持续集成CI/CD之CD的完整版最佳实践

CI(持续集成)CD(持续交付)

CI/CD与Docker