2

在 Elastic Beanstalk 中,是否可以从 .ebextensions *.config 文件中引用环境属性?

例如,使用 Cloud Formation,我已将以下环境属性添加到创建的环境中 -

- Namespace: "aws:elasticbeanstalk:application:environment"
  OptionName:  "LOAD_USER_PROFILE"
  Value:       !Ref "LoadUserProfile"

此属性已添加并在我的环境的软件配置的环境属性部分下按预期显示 -

在此处输入图像描述

但是,当我尝试通过 .ebextensions *.config 文件访问该属性时,它会失败并出现以下错误 -

构建期间发生错误:命令 loaduserprofile 失败

这是我的 *.config 文件中的命令(源自此处给出的答案),如果我硬编码truefalse代替{$LOAD_USER_PROFILE}- 则该命令有效。

container_commands:
  loaduserprofile:
    command: appcmd set apppool "DefaultAppPool" -processModel.loadUserProfile:"{$LOAD_USER_PROFILE}"
    cwd: C:\\Windows\\System32\\inetsrv

我想要实现的目标是否可能,如果是,我做错了什么?

4

1 回答 1

2

将它们作为环境变量传递给应用程序的说法可能会产生误导。

它们实际上作为属性传递给您的应用程序,因此这取决于您在 EB 中部署的应用程序。看来您正在使用 IIS/.Net,因此根据以下答案将属性名称和值添加到 web.config:

如何在 .net 中阅读 Elastic Beanstalk 环境属性?

于 2016-12-21T12:43:01.143 回答