为开发/testing/产品运行Jenkins从站的优点/缺点?

我们首先同意我们要遵守典型的Docker / DevOps原则。 因此,我们希望保持任务的隔离,configuration版本的控制,并将整体定制降至最低。

景观:

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

计划:

  • 为test / staging / prod创build单独的实例,每个实例都安装了Docker
  • 在每个实例上旋转Jenkins从属容器,由Jenkins主控制
  • 当一个提交被发送到'test'分支时,Jenkins主服务器将任务发送到'Test'从服务器,从而最终将应用程序的版本加速
  • 同样,在testing成功运行并且代码被推送到分段或分支分支之后,Jenkins将具有分支各自的从属构build应用程序。

问题:

  • 这种方法有什么问题?
  • 什么可以通过这种方法得到改善?

在采取这种方法时,您应该问自己几个问题, 这篇博文中涵盖了很多内容。

最后一段build议将Docker套接字暴露给CI容器,使您可以在主机上而不是在CI容器中构build图像,从而使您免受来自在Docker中运行Docker的许多痛苦。

您应该问的其他问题是用于控制主站和从站容器的编排服务。 在Stelligent的这篇博客文章中,我有一段很快的时间来使用CloudForms快速创buildAWS ECS所需的全部内容,但其他解决scheme显然是一种select。

总而言之,只要您谨慎行事,遵循最佳做法,我认为您的方法没有任何问题。 祝你好运。