jenkins - 运行Jenkins从站进行Dev/Test/Prod的优点/缺点?

标签 jenkins docker continuous-integration continuous-deployment jenkins-workflow

首先,我们同意我们要遵守典型的Docker / DevOps原则。因此,我们希望保持任务隔离,控制配置版本以及将总体自定义降至最低。
景观:

  • Jenkins被用作您选择的云实例上的CI / CD工具。

  • 计划:
  • 为测试/登台/生产创建单独的实例,每个实例都安装了Docker的
  • 在每个实例上启动Jenkins从属容器,这些容器由Jenkins主
  • 控制
  • 将提交发送到“测试”分支时,Jenkins主服务器将任务发送到“测试”从服务器,最终使应用程序
  • 的版本旋转
  • 同样,在成功运行测试并将代码推送到暂存或prod分支之后,Jenkins将具有与分支有关的从属构建应用程序。

  • 问题:
  • 这种方法有什么问题?
  • 这种方法可以改善什么?
  • 最佳答案

    采用这种方法时,您应该问自己几个问题,许多问题都在this博客文章中介绍。

    最后一段建议将docker套接字暴露给CI容器,使您可以在主机上而不是在CI容器内部构建镜像,从而避免了在Docker中运行Docker带来的诸多麻烦。

    您可能还应该问的其他问题是用于控制主容器和从属容器的编排服务。在Stelligent的this博客文章之后,我度过了愉快的时光,使用Cloudformation堆栈快速创建了我在AWS ECS上所需的所有内容,但是显然可以选择其他解决方案。

    因此,总的来说,只要您谨慎行事并遵循最佳做法,我认为您的方法没有任何问题。
    祝好运。

    关于jenkins - 运行Jenkins从站进行Dev/Test/Prod的优点/缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41583571/

    相关文章:

    docker - 如何使用 Docker 卷作为 Mesos/Marathon 的持久卷?

    node.js - NodeJS CI/CD 构建缺少文件

    Jenkins 管道 : How to write UTF-8 files with writeFile?

    node.js - npm package.json 和 docker(安装它...)

    docker - Docker容器不列出我拉出的容器吗?

    gradle - gradle是否支持 “promotion”错误?

    使用 Maven 将 Java 应用程序部署到 heroku 失败

    jenkins - 如何在多个项目中共享声明式管道

    java - 计算绝对值的错误尝试

    hadoop - Jenkins作为Hadoop Edge节点上的Job Server