从.ebextensions中的Elastic Beanstalk中读取环境属性

时间:2017-03-22 17:17:42

标签: .net amazon-web-services elastic-beanstalk

我已在Amazon的Elastic Beanstalk中设置了一些属性及其值。一个例子是: enter image description here

我有一个.NET应用程序,我将部署在带有IIS的EC2 Windows服务器上。 .NET项目包含一个.ebextions文件夹,我们在其中存储.config个文件以进行进一步的配置。

现在是我的问题。我能够读取属性的值(所以读取" root"来自属性DB.Username"在ebextions文件夹中的.config文件内?

我尝试过类似的东西,但似乎Elastic Beanstalk的属性并不是真正的Windows环境变量

commands:
  010-01-test:
    command: echo %DB.Username%

我知道这些变量也在我项目的web.config中使用。但是,从这个文件中获取值似乎是一个丑陋的解决方案吗?

1 个答案:

答案 0 :(得分:0)

我有类似的问题。我在这里找到了解决方案https://blog.corpinfo.com/how-to-call-and-export-variables-in-elastic-beanstalk

对于unix,您只需编写

即可
commands:
  010-01-test:
    command: echo $(/opt/elasticbeanstalk/bin/get-config environment -k DB.Username)

甚至$(get-config environment -k DB.Username):

我不知道如何在Windows中公开这个内联,但应该有办法。

替代方案,您可以尝试更详细的解决方案

commands:
  010-01-test:
    command: echo %DBUsername%
    env:
      DBUsername: 
        "Fn::GetOptionSetting":
          Namespace: "aws:elasticbeanstalk:application:environment"
          OptionName: DB.Username