将 Elastic Beanstalk 配置更改为 Docker
Change Elastic Beanstalk Configuration To Docker
我目前正在 运行 Elastic Beanstalk 应用程序的 Node JS 配置。我想将环境更改为 Docker 而不必删除环境。有谁知道我该怎么做?
有重建环境的动作,但我不确定是否能让我更改配置。
我还没有任何东西上传到环境中,所以我不担心文件或数据库被删除。
有什么想法吗?
编辑:
我的问题是我在另一台服务器上有一个 DNS 指向我的弹性 beanstalk 域 (domain.elasticbeanstalk.com)。如果我删除该应用程序,我可以取回该名称吗?
您实际上无法在 Docker、Node.js 等之间更改环境类型(基于 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html),但您可以创建一个具有不同域和使用交换 CNAME 功能。在这种情况下,您的新环境将获得相同的 URL(并且可以安全地删除旧环境)。
您可以使用 EB CLI 执行此操作。 (3.2+)
只需执行 eb config
并将解决方案堆栈名称更改为所需的确切解决方案堆栈字符串。
我找到了一种无需 url 交换或删除并使用 aws cli 重新创建环境的方法。这可能是一种 hack,但还不错,而且有效。
首先,更新环境以使用新的解决方案堆栈。我发现我必须删除新解决方案堆栈中不支持的选项设置,并且我必须同时更改为适用于新解决方案堆栈的新应用程序版本:
aws elasticbeanstalk update-environment --solution-stack-name \
"64bit Amazon Linux 2016.03 v2.1.0 running Docker 1.9.1" \
--environment-name my-env-name \
--options-to-remove Namespace=aws:elasticbeanstalk:container:python,OptionName=WSGIPath \
--version-label new-version-label
此命令有效,但会导致环境混乱,因为 beantalk 会更新所有设置,但您仍然有一个底层 EC2,上面有旧的解决方案堆栈。于是重建环境:
aws elasticbeanstalk rebuild-environment --environment-name my-env-name
环境恢复正常!
我目前正在 运行 Elastic Beanstalk 应用程序的 Node JS 配置。我想将环境更改为 Docker 而不必删除环境。有谁知道我该怎么做?
有重建环境的动作,但我不确定是否能让我更改配置。
我还没有任何东西上传到环境中,所以我不担心文件或数据库被删除。
有什么想法吗?
编辑:
我的问题是我在另一台服务器上有一个 DNS 指向我的弹性 beanstalk 域 (domain.elasticbeanstalk.com)。如果我删除该应用程序,我可以取回该名称吗?
您实际上无法在 Docker、Node.js 等之间更改环境类型(基于 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html),但您可以创建一个具有不同域和使用交换 CNAME 功能。在这种情况下,您的新环境将获得相同的 URL(并且可以安全地删除旧环境)。
您可以使用 EB CLI 执行此操作。 (3.2+)
只需执行 eb config
并将解决方案堆栈名称更改为所需的确切解决方案堆栈字符串。
我找到了一种无需 url 交换或删除并使用 aws cli 重新创建环境的方法。这可能是一种 hack,但还不错,而且有效。
首先,更新环境以使用新的解决方案堆栈。我发现我必须删除新解决方案堆栈中不支持的选项设置,并且我必须同时更改为适用于新解决方案堆栈的新应用程序版本:
aws elasticbeanstalk update-environment --solution-stack-name \
"64bit Amazon Linux 2016.03 v2.1.0 running Docker 1.9.1" \
--environment-name my-env-name \
--options-to-remove Namespace=aws:elasticbeanstalk:container:python,OptionName=WSGIPath \
--version-label new-version-label
此命令有效,但会导致环境混乱,因为 beantalk 会更新所有设置,但您仍然有一个底层 EC2,上面有旧的解决方案堆栈。于是重建环境:
aws elasticbeanstalk rebuild-environment --environment-name my-env-name
环境恢复正常!