我想用我的项目实现CI和CD的概念,我想一起使用Jenkins,SonarQube和docker,现在我很困惑,我怎么能用这些工具设计我项目的系统架构师。我的项目开发流程将如何部署?
答案 0 :(得分:1)
这是一个广泛的问题,但从根本上说,你要做的是在Jenkins中组建一个构建管道,当开发人员推动对源代码管理的更改时会触发它。管道会做这样的事情:
有许多变化,但核心思想是有几个阶段,每个阶段都有自己的质量门,并且都是自动化的。例如。如果单元测试失败,则管道失败并且您不构建映像;如果集成测试失败,则不要部署到QA环境等。
使用Docker的优点是每个阶段使用完全相同的应用程序堆栈,因为它捆绑在映像中。您在prod中部署的内容是您从QA批准的内容,即通过集成测试的内容。
您可以在生产发布之前拥有手动质量门,供人检查应用程序。这不是完全自动化的CD,但它可以让人们更舒服。