AWS ElasticBeanstalk、CodeDeploy 与 Capistrano、Mina、Vlad 等
Posted
技术标签:
【中文标题】AWS ElasticBeanstalk、CodeDeploy 与 Capistrano、Mina、Vlad 等【英文标题】:AWS ElasticBeanstalk, CodeDeploy vs Capistrano, Mina, Vlad, etc 【发布时间】:2017-04-08 03:06:24 【问题描述】:尝试在 AWS Auto Scaling 组上托管我的 php 项目,并希望拥有一个快速的部署程序和服务器自动化工具。
在其他项目中使用 Capistrano,发现它相当不错。唯一的问题是我没有找到使用 Capistrano 部署在 AWS 中的 Auto Scaling 组上的最佳方式。
然后我尝试了 ElasticBeanstalk 和 CodeDeploy,因为它们本机支持自动扩展,但似乎我们每次想要部署时都必须存档/捆绑应用程序(将捆绑包上传/提交到 S3/GitHub)。此外,我们还需要将这些 vendor 文件包含在包中,即使它们已经通过先前的部署放入 EC2 实例中。这使得每次部署都非常缓慢。
我是这 2 项 AWS 服务的新手,我可能做错了什么。想知道AWS 中是否有一些服务以与 Heroku 类似的方式部署(而不是捆绑整个应用程序,只是从 GitHub 中提取最新更改)?
或者如果我们使用像 Capistrano 这样的工具,是否有适当的方法来处理自动缩放?
【问题讨论】:
【参考方案1】:使用 CodeDeploy,您可以在源代码更改时从 GitHub 存储库触发自动部署。如需更多信息,请查看此博客https://aws.amazon.com/blogs/devops/automatically-deploy-from-github-using-aws-codedeploy/
【讨论】:
以上是关于AWS ElasticBeanstalk、CodeDeploy 与 Capistrano、Mina、Vlad 等的主要内容,如果未能解决你的问题,请参考以下文章
从在 ElasticBeanstalk 中运行的 Flask 应用程序使用 AWS
在 AWS 上使用 ElastiCache 和 ElasticBeanstalk 配置 Redis
是否有任何东西可以将 AWS::ElasticBeanstalk::Environment 链接到它创建的嵌套堆栈?