云服务器上的自动应用程序部署

我一直在AWS EC2托pipe我的应用程序,而且现在我尝试了OpenShift ,我喜欢的是整个部署过程是自动化的,但是我不喜欢定价,因为我知道使用EC2更便宜,因为我可以托pipe许多应用程序在同一台服务器。

我想知道怎样才能在AWS上为我自己的部署模拟OpenShiftstream程?原因很明显,stream程是重复的,每当我想添加一个应用程序时,我都要创build一个新的虚拟主机并指向运行节点。 js / php / python …另外一个我喜欢操作系统的特性是我不需要上传整个项目,实际上,我只需要推动git仓库来部署它。

感谢@BillSchaller,我发现AWS平台提供了完成这件事情的东西,因为CodeCommit, CodeDeploy, CodePipeline, OpsWork等许多服务似乎都做类似的事情CodeCommit, CodeDeploy, CodePipeline, OpsWork这很CodeCommit, CodeDeploy, CodePipeline, OpsWork ……它们是互补的还是互补的什么?

所以这是事情:

  1. 什么样的AWS产品适合设置基础架构,以便能够执行以下操作:
    • 创build生成git存储库和虚拟主机configuration的应用程序实例,这些configuration可以与node.js / php / python / java
    • git repo被推送(更新)时更新生产应用程序,如果可能的话有两个状态来处理dev和production
    • 为每个应用设置SSL证书
  2. 在这种情况下,哪种AWS产品更适合:
    • 我想决定使用哪个git托pipe(基本上我会使用Upsource,如果不是Bitbucket,最后一个选项是Github的定价原因)
    • 如果可能的话,我想要一个GUI的过程
    • 我喜欢有三个EC2实例(node.js,php / python,java)和一个RDS数据库

注意:我不想为每个应用程序创build一个服务器,我想在同一台服务器上托pipe许多应用程序。

您可以使用AWS OpsWorks来执行此操作。 例如,您可以简单地在github中设置webhook,然后将其推送到通过AWS CLI触发OpsWorks部署事件的脚本。