尝试通过 Visual Studio 2015 将 IIS 应用程序部署到 AWS Elastic Beanstalk。每次我们尝试部署它时,我们都会收到以下错误:
Error occurred during build: Command hooks failed
[Instance: i-XXXXXXXX ConfigSet: Infra-WriteRuntimeConfig, Infra-WriteApplication1,
Infra-WriteApplication2, Infra-EmbeddedPreBuild, Hook-PreAppDeploy,
Infra-EmbeddedPostBuild, Hook-EnactAppDeploy, Hook-PostAppDeploy]
Command failed on instance. Return code: 1 Output: null.
Unsuccessful command execution on instance id(s) 'i-XXXXXXXX'. Aborting the operation.
我们已尝试重新启动应用程序。我们尝试删除并重新创建环境和应用程序。一切都没有成功。总是同样的错误。我在任何地方都无法在网上找到任何可以解决此问题的信息。还有其他人遇到过这个问题并找到了解决方案吗?
Beanstalk 部署错误通常非常普遍。
要找到根本原因,故障排除步骤是 AWS Elastic Beanstalk 故障排除文档中的步骤:
检查您在源代码中正确创建的钩子,例如,
钩子应该在项目根目录的这个路径中创建
.platform/hooks/postdeploy/
.platform/hooks/predeploy/
如果您创建了一个bash hooks,您必须在它执行之前为其授予权限,因此请为.ebextensions中的hooks设置权限,如下图所示
如果以上都正确,那么检查 EB 日志,因为您必须登录到当前实例。
如果实例附加了您的密钥对,您可以直接登录到 ssh,否则您必须创建一个 ssh 密钥对并附加到实例,如下所示
然后将更改应用到 EB 应用程序并使用 ssh 登录到实例
并检查以下日志
ls /var/log/
cat /var/log/eb-hooks.log
您还可以使用
查看 EB 引擎的详细日志cat /var/log/eb-engine.log