假设我有两个Docker容器1和2。我想使用多容器Docker映像将这些部署到AWS Elastic Beanstalk,以便我有以下EC2实例来降低成本:
>
EC2实例2
EC2实例3
所以我的问题是:
我需要创建多少个弹性Beanstalk应用程序?
您可以通过具有多个环境的单个应用程序获得所需的设置。有关环境的Elastic Beanstalk文档中对此进行了描述。对于您的用例,您将为同一应用程序配置“生产”和“测试”环境。
您的环境可以有不同的配置,因此您可以为您的测试环境使用更小的(更便宜的)EC2实例。
您还可以有不同的自动缩放规则,因此在您描述的环境中,您将在测试环境中指定至少1个EC2实例,但在生产环境中至少2个EC2实例。
我怎样才能得到容器的1
我想您是在问如何将两个Docker容器部署到作为Docker主机的单个EC2实例上?
这在Dockerrun中定义。aws。json文件,该文件记录在《弹性豆茎指南》中。注意-有关多容器Docker应用程序,请参阅版本2。
该文件声明了您希望如何配置您的环境。与您的问题相关的位是容器定义
,它包含您要部署到主机(底层EC2实例)的Docker容器数组。
当Elastic Beanstek扩展您的环境时,它会将Dockerrun文件中的配置应用到新实例。因此,如果您的示例正式生产环境扩展为具有三个实例,您最终会有第三个实例运行相同的两个容器。
需要创建多少ELB
根据留档,每个环境将有一个弹性负载均衡器:
每个环境都有一个指向负载均衡器的CNAME(URL)。
在上面提到的Dockerrun文件的containerDefinition部分中,可以定义容器的端口映射。因此,如果您的示例中有一个容器正在运行Nginx,则Dockerrun文件中的配置与此类似:
"name": "nginx-proxy",
"image": "nginx",
"essential": true,
"memory": 128,
"portMappings": [
{
"hostPort": 80,
"containerPort": 80
}
],
然后将此配置应用于运行容器配置的任何实例-当负载均衡器将请求路由到该特定实例时,它会转发到端口80上侦听的容器。
我正在使用aws elastic beanstalk托管我的dhango应用程序。我们需要设置应用程序的开发、阶段和产品环境。但每当我使用eb create命令时,它也会为新环境启动一个新的ec2实例。 可以在单个ec2实例中设置多个弹性beanstalk环境吗。此外,如果我想在其中一个实例中托管WordPress网站,我可以通过ssh登录到您的系统并将网站放在公共web目录中吗?
我对亚马逊AWS服务非常陌生。我想知道是否有办法运行EC2的一个实例(比如Amazon Linux AMI ),然后将两个环境连接到这个实例。 特别是,我希望在单个EC2实例上运行PHP和Tomcat环境。 问题是,每次我在Elastic Beanstalk中创建新环境时,它似乎也会创建一个新的EC2实例。我是不是遗漏了什么? 我很感激任何关于此的提示。
我知道ECS有EC2和fargate启动类型,它们对底层环境配置提供的控制不同。
我在尝试将我的Godaddy域与AWS Elastic Beanstalk实例链接时遇到了这个问题。我发现了很多关于如何将EC2实例与Godaddy上的域链接的文档,但对于Elastic Beanstalk实例却没有。所以我最终得到了这个网址:
我一直在努力将我的Django Web应用程序成功部署到AWS的Elastic Beanstalk。我能够在本地机器上从EB CLI部署我的应用程序,没有任何问题,直到我将container_commands配置文件列表添加到.ebextensions文件夹中。 以下是我的配置文件的内容: 我已经深入研究了日志,发现这些消息在 cfn-init-cmd.log是最有帮助的: 我不确定为什么它在这个