使用CICD工具进行项目制作

时间:2016-10-20 11:13:49

标签: git jenkins docker sonarqube

我想用我的项目实现CI和CD的概念,我想一起使用Jenkins,SonarQube和docker,现在我很困惑,我怎么能用这些工具设计我项目的系统架构师。我的项目开发流程将如何部署?

1 个答案:

答案 0 :(得分:1)

这是一个广泛的问题,但从根本上说,你要做的是在Jenkins中组建一个构建管道,当开发人员推动对源代码管理的更改时会触发它。管道会做这样的事情:

  • 构建项目,运行单元测试& SonarQube分析
  • 构建一个Docker镜像,用于打包应用程序&它的依赖
  • 从图像&运行Docker容器运行集成测试
  • 在QA环境中运行/升级Docker容器并运行冒烟测试
  • 在生产中运行/升级Docker容器

有许多变化,但核心思想是有几个阶段,每个阶段都有自己的质量门,并且都是自动化的。例如。如果单元测试失败,则管道失败并且您不构建映像;如果集成测试失败,则不要部署到QA环境等。

使用Docker的优点是每个阶段使用完全相同的应用程序堆栈,因为它捆绑在映像中。您在prod中部署的内容是您从QA批准的内容,即通过集成测试的内容。

您可以在生产发布之前拥有手动质量门,供人检查应用程序。这不是完全自动化的CD,但它可以让人们更舒服。