AWS Elastic Beanstalk:nginx 重新加载失败

Luk*_*ski 5 nginx amazon-web-services amazon-elastic-beanstalk

我已经根据这篇文章向我的 Elastic Beanstalk 环境提供了 nginx 配置。我的应用程序位于 Docker 容器中。问题是环境重新加载nginx失败。

这是我的配置文件:

files:
  "/etc/nginx/conf.d/proxy.conf" :
    mode: "000644"
    owner: root
    group: root
    content: |
      client_max_body_size 500M;

container_commands:
  01_reload_nginx:
    command: "sudo service nginx reload"
Run Code Online (Sandbox Code Playgroud)

这导致失败(之后/var/log/eb-activity.log):

EmbeddedPostBuild/postbuild_0_audio_explorer] : Starting activity...
[2019-03-04T21:45:01.064Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1/StartupStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_audio_explorer/Command 01_reload_nginx] : Starting activity...
[2019-03-04T21:45:01.100Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1/StartupStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_audio_explorer/Command 01_reload_nginx] : Activity execution failed, because:  (ElasticBeanstalk::ExternalInvocationError)


[2019-03-04T21:45:01.100Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1/StartupStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_audio_explorer/Command 01_reload_nginx] : Activity failed.
[2019-03-04T21:45:01.100Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1/StartupStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_audio_explorer] : Activity failed.
[2019-03-04T21:45:01.100Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1/StartupStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild] : Activity failed.
[2019-03-04T21:45:01.122Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1/StartupStage0/EbExtensionPostBuild] : Activity failed.
[2019-03-04T21:45:01.122Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1/StartupStage0] : Activity failed.
[2019-03-04T21:45:01.122Z] INFO  [3274]  - [Application deployment app-8a62-190304_223307@1] : Completed activity. Result:
  Application deployment - Command CMD-Startup failed
Run Code Online (Sandbox Code Playgroud)

当我删除部分时:

container_commands:
  01_reload_nginx:
    command: "sudo service nginx reload"
Run Code Online (Sandbox Code Playgroud)

部署顺利。

有任何想法吗?我如何获得有关该命令究竟出了什么问题的信息?如果我 ssh 到我的实例,我可以毫无问题地执行命令。

bro*_*knz 5

Elastic beanstalk 部署过程将为您重新加载 nginx,因此您可以将其从脚本中永久删除并避免错误。弄清楚命令失败的确切原因只是学术性的