ElasticBeanstalk 与 Docker:如何使用来自 aws cli 的创建环境
Posted
技术标签:
【中文标题】ElasticBeanstalk 与 Docker:如何使用来自 aws cli 的创建环境【英文标题】:ElasticBeanstalk with Docker: how to use create-environment from aws cli 【发布时间】:2015-08-20 09:56:28 【问题描述】:我正在尝试使用 aws cli 为 Docker 创建一个新环境。我可以通过 aws Web 控制台轻松地做到这一点,但我必须从下拉菜单中选择“类型:WebServer”和“配置:Docker”。我看不到这些选项在aws elasticbeanstalk create-environment
arguments 中的位置。 (我也没有在 --option-settings
docs 中看到它们。)是否有可用的示例?
【问题讨论】:
【参考方案1】:您可以通过此命令查看 AWS 中可用的堆栈名称:
aws elasticbeanstalk list-available-solution-stacks
目前最后一个 docker 镜像是运行 Docker 17.12.1-ce 的 64 位 Amazon Linux 2018.03 v2.10.0
https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html
之后,您创建了一个 Elastic Beanstalk 应用程序,执行以下命令来创建环境
aws elasticbeanstalk create-environment --application-name MyApp --environment-name my-env --cname-prefix my-app1 --version-label v1 --solution-stack-name "64bit Amazon Linux 2018.03 v2. 10.0 运行 Docker 17.12.1-ce"
【讨论】:
【参考方案2】:我没有尝试过,但我假设有一个 --solution-stack-name
选项,您可以在其中传递诸如 64bit Amazon Linux 2015.03 v1.4.1 running Docker 1.6.0
之类的值。您也可以在 json 文件上指定解决方案堆栈,并通过 --option-settings file://your_options.json
指定 json 文件,您可以在其中包含除解决方案堆栈之外的其他选项
"SolutionStackName": "64bit Amazon Linux 2015.03 v1.4.1 running Docker 1.6.0"
您可以在此处查看可能使用的值:docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html
【讨论】:
是的,我让它与 --solution-stack-name "64bit Amazon Linux 2015.03 v1.4.1 running Docker 1.6.0" 一起工作。工作完美。 (但我不确定您是否能够将其放入 your_options.json 文件中是正确的。我没有在文档中看到该选项,当我尝试您建议的语法时,它窒息了。)谢谢。 【参考方案3】:使用 Dockerrun.aws.json 转到文件夹。
在.elasticbeanstalk/config.yml
添加
global:
default_platform: 64bit Amazon Linux 2015.03 v1.4.1 running Docker 1.6.0
使用 eb 命令:eb init && eb create
How to install eb.
【讨论】:
您是否建议将 eb cli 与 AWS cli 分开安装?我认为特定的 cli 已被弃用,因此您现在可以使用“aws elasticbeanstalk create-environment ...”等运行所有 eb 命令。 好吧,如果你没有其他成功的答案:) 但我只是说什么对我有用;我自己是aws的新手,但我认为它可能会对你有所帮助。以上是关于ElasticBeanstalk 与 Docker:如何使用来自 aws cli 的创建环境的主要内容,如果未能解决你的问题,请参考以下文章
ElasticBeanstalk 与 Docker:如何使用来自 aws cli 的创建环境
ElasticBeanstalk - 无法从私有 Docker Hub 存储库中提取 docker 映像
无法将多容器 docker 部署到 ElasticBeanstalk
elasticbeanstalk 和 ecr 中的 docker 映像存在问题