Amazon Elastic Beanstalk与使用Docker容器的EC2实例相比如何?

23

如果我理解正确,Elastic Beanstalk 为每个部署的应用程序创建一个 EC2 实例。但是,一个应用程序通常不会以100%的 CPU 运行,然而亚马逊按使用的实例收费。所以,如果我使用 Dockerfile 部署了5个应用程序,AWS 将按每月使用5个 EC2 实例收费。

考虑到这一点,我不能简单地启动一个 EC2,安装 Docker 并在其中运行我的容器吗?这样不是更具成本效益吗?


有一个新的容器服务,更加适合Docker应用程序。https://aws.amazon.com/blogs/aws/cloud-container-management/ - Dax Fohl
2个回答

23
AWS已将Elastic Beanstalk(EB)与EC2容器服务(ECS)集成,以支持多容器Docker环境。由多个实例组成的EB环境可以在自动缩放组中每个实例上运行多个容器,并通过ECS代理及其API进行管理。使用.ebextensions将多个ELB监听器映射到运行在EC2实例上的容器。
查看此教程以在单独的容器中运行Nginx + PHP-FPM。
感谢@Synturas向我通报此更新。

2
谢谢Ben!你的博客文章非常有趣(实际上我在你的网站上读了其他所有东西;) 我没有预料到Beanstalk有如此严重的限制,现在我打算在一个小的EC2实例中运行Docker容器。我很好奇它会跑得如何。 - Nick
如果您只运行一个高负载应用程序,它只在一个容器上运行并连接到RDS数据库,那么在这种情况下,您会仅运行单个docker实例,还是多容器docker实例以最大化资源利用率? - Brian FitzGerald

2
是的,你的假设是正确的。不同之处在于,在EC2上进行操作时,您将不得不自己管理和监控容器。因此,我想对于生产环境,您需要拥有自己的团队,否则可以选择BeanStalk。
还要遵循这个Docker on Amazon文档。
编辑
感谢@sajithp的评论,我已更新链接。

2
提到的链接已经失效了。这里分享新的链接 :) http://docs.aws.amazon.com/AmazonECS/latest/developerguide/docker-basics.html - SajithP

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接