来自 Dockerrun.aws.json -AWS 的 EBS 中的增量命令超时
Increment command timeout in EBS from the Dockerrun.aws.json -AWS
我正在 Elastic beanstalk 中部署一个 Dockerfile 和一个 Dockerrun.aws.json,它给出了一个错误,因为一些命令超过了最大命令超时。我可以通过转到更新和部署并修改最大超时来修复此错误。但是我想知道Dockerrun.aws.json有没有增加EBS最大命令超时的命令?或另一种自动执行此操作的方法?
不,您不能使用 Dockerrun.aws.json 增加超时,但您可以使用此选项设置在您的应用程序源中捆绑一个 ebextension。
在您的应用程序源中创建一个名为 .ebextensions
的目录中的文件。假设文件是 .ebextensions/01-increase-timeout.config
.
文件内容应为:
option_settings:
- namespace: aws:elasticbeanstalk:command
option_name: Timeout
value: 1000
请注意此文件为 YAML 格式。
在此之后,您可以使用此版本的源代码更新您的环境。
之前在这里回答:
另一种选择是使用适用于 Windows PowerShell 的 Aws 工具来执行此操作。这个班轮将获得您帐户中的每个 EB 环境,然后将命令超时设置为 400 秒,每个命令之间有 15 秒的睡眠以避免 AWS 的 API 速率限制。
PS C:\> get-ebenvironment | % {start-sleep -Seconds 15; Update-EBEnvironment -ApplicationName $_.ApplicationName -EnvironmentName $_.EnvironmentName -OptionSetting @{"namespace"="aws:elasticbeanstalk:command"; "optionName"="Timeout"; "value"=400} }
我正在 Elastic beanstalk 中部署一个 Dockerfile 和一个 Dockerrun.aws.json,它给出了一个错误,因为一些命令超过了最大命令超时。我可以通过转到更新和部署并修改最大超时来修复此错误。但是我想知道Dockerrun.aws.json有没有增加EBS最大命令超时的命令?或另一种自动执行此操作的方法?
不,您不能使用 Dockerrun.aws.json 增加超时,但您可以使用此选项设置在您的应用程序源中捆绑一个 ebextension。
在您的应用程序源中创建一个名为 .ebextensions
的目录中的文件。假设文件是 .ebextensions/01-increase-timeout.config
.
文件内容应为:
option_settings:
- namespace: aws:elasticbeanstalk:command
option_name: Timeout
value: 1000
请注意此文件为 YAML 格式。 在此之后,您可以使用此版本的源代码更新您的环境。
之前在这里回答:
另一种选择是使用适用于 Windows PowerShell 的 Aws 工具来执行此操作。这个班轮将获得您帐户中的每个 EB 环境,然后将命令超时设置为 400 秒,每个命令之间有 15 秒的睡眠以避免 AWS 的 API 速率限制。
PS C:\> get-ebenvironment | % {start-sleep -Seconds 15; Update-EBEnvironment -ApplicationName $_.ApplicationName -EnvironmentName $_.EnvironmentName -OptionSetting @{"namespace"="aws:elasticbeanstalk:command"; "optionName"="Timeout"; "value"=400} }