在 .ebsextension 文件夹上运行 container_commands

Posted

技术标签:

【中文标题】在 .ebsextension 文件夹上运行 container_commands【英文标题】:Running container_commands on .ebsextension folder 【发布时间】:2017-07-01 22:10:00 【问题描述】:

尝试将所有 http 请求重定向到 HTTPS。

我的 web.conf 中有重定向规则,但我收到太多重定向错误。

发现我需要设置我的 Elasticbeanstalk 来运行“container_command”来运行脚本。我到了这张照片。

在几个山药结构检查器中运行它,它们都通过了。

[2017-02-13T21:40:40.129Z] INFO  [1090]  : Loading manifest from bucket      'elasticbeanstalk-us-west-2-943111687699' using computed S3 key 'resources/environments/e-ecbvzu2fms/_runtime/versions/manifest_000000000000'.
[2017-02-13T21:40:40.273Z] INFO  [1090]  : Updated manifest cache: deployment ID 90 and serial 90.
[2017-02-13T21:40:40.273Z] DEBUG [1090]  : Loaded definition of Command CMD-AppDeploy.
[2017-02-13T21:40:40.274Z] INFO  [1090]  : Executing Application update
[2017-02-13T21:40:40.274Z] INFO  [1090]  : Executing command: CMD-AppDeploy...
[2017-02-13T21:40:40.274Z] INFO  [1090]  : Executing command CMD-AppDeploy activities...
[2017-02-13T21:40:40.274Z] DEBUG [1090]  : Setting environment variables..
[2017-02-13T21:40:40.274Z] INFO  [1090]  : Running AddonsBefore for command CMD-AppDeploy...
[2017-02-13T21:40:40.274Z] DEBUG [1090]  : Running stages of Command CMD-AppDeploy from stage 0 to stage 1...
[2017-02-13T21:40:40.274Z] INFO  [1090]  : Running stage 0 of command CMD-AppDeploy...
[2017-02-13T21:40:40.274Z] INFO  [1090]  : Running leader election...
[2017-02-13T21:40:40.522Z] INFO  [1090]  : Instance is Leader.
[2017-02-13T21:40:40.522Z] DEBUG [1090]  : Loaded 6 actions for stage 0.
[2017-02-13T21:40:40.522Z] INFO  [1090]  : Running 1 of 6 actions: InfraWriteConfig...
[2017-02-13T21:40:40.528Z] INFO  [1090]  : Running 2 of 6 actions: DownloadSourceBundle...
[2017-02-13T21:40:44.724Z] INFO  [1090]  : Running 3 of 6 actions: EbExtensionPreBuild...
[2017-02-13T21:40:45.102Z] INFO  [1090]  : Running 4 of 6 actions: AppDeployPreHook...
[2017-02-13T21:41:01.347Z] INFO  [1090]  : Running 5 of 6 actions: EbExtensionPostBuild...
[2017-02-13T21:41:02.390Z] INFO  [1090]  : Running 6 of 6 actions: InfraCleanEbextension...
[2017-02-13T21:41:02.392Z] INFO  [1090]  : Running stage 1 of command CMD-AppDeploy...
[2017-02-13T21:41:02.392Z] DEBUG [1090]  : Loaded 2 actions for stage 1.
[2017-02-13T21:41:02.392Z] INFO  [1090]  : Running 1 of 2 actions: AppDeployEnactHook...
[2017-02-13T21:41:21.024Z] INFO  [1090]  : Running 2 of 2 actions: AppDeployPostHook...
[2017-02-13T21:41:21.613Z] INFO  [1090]  : Running AddonsAfter for command CMD-AppDeploy...
[2017-02-13T21:41:22.088Z] INFO  [1090]  : Command CMD-AppDeploy succeeded!

【问题讨论】:

检查/var/log/eb-commandprocessor.log日志以查看命令不起作用的原因,而不是尝试/错误。可能asadmin 不在路径中,您需要指定命令的完整路径。 我找到了,但找不到任何关于我创建的函数的提及,或者根本没有任何错误或警告。我是否需要启用任何东西,以便 beanstalk 知道在那里查找 .config 文件?从我在网上找不到的情况来看,人们就是这样使用“asadmin” 您正在使用此更新文件部署新版本的 EB 应用程序,对吗? 是的,每次上传我都会重建整个应用程序并再次部署war文件 尝试打开您的 WAR 文件以验证 .exextensions 目录是否将其放入 WAR 文件中,并且位于文件的根目录中,并且没有被构建工具排除或忽略。 ***.com/questions/18423932/… 【参考方案1】:

无法在 EBS 上运行命令,通过在 UrlRewriteFilter 上添加规则解决了我的问题。

不是最好的方法,但现在可行

<rule>
<condition type="header" operator="notequal" name="X-Forwarded-Proto">^HTTPS$</condition>
<condition name="host" operator="equal"test.com</condition>
<from>^/(.*)</from>
<to type="permanent-redirect" last="true">https://www.test.com/$1</to>
</rule>
<rule>

【讨论】:

以上是关于在 .ebsextension 文件夹上运行 container_commands的主要内容,如果未能解决你的问题,请参考以下文章

如何修复错误:SQLITE_CANTOPEN:无法在 Zeit.co 上打开数据库?

在 bitnami 灯堆栈实例上运行 nodejs 应用程序

Phonegap 3.4 文件传输错误 (iOS)

在不是我的设备上运行 Xcode 应用程序?

CO88运行时间过长解决

Makefile - 用于C程序的Unix