簡體   English   中英

在AWS Elastic Beanstalk上配置ASP.NET應用程序

[英]Configuring ASP.NET application on AWS Elastic Beanstalk

我需要將應用程序部署到AWS Beanstalk中的不同環境。 因此,我可以使用MSBuild創建捆綁包,將zip文件上傳到S3存儲桶,然后部署到AWS EB。 但是,我想根據環境更改某些web.config參數。 例如,我想更改連接字符串。 現在,我正在使用RDP手動更改web.config中的這些設置,或者必須使用更改后的配置創建新程序包。 但是我希望在環境之間進行持續部署和升級,因此這些選項不起作用。

為此,您可以使用配置腳本(.config)+一些aws環境變量。

其背后的想法很簡單。 您可以使用函數Fn::GetOptionSetting從aws設置中獲取環境名稱。 然后,您可以使用Powershell編輯文件。

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html

我正在使用類似的方法在asp.net核心中設置Windows環境變量。 下面的腳本創建一個PWS腳本並簡單地執行它。

我已附上我用作示例的腳本:

files:
   "c:/cfn/set-aspnetcore-environment.ps1":
       content: |
          $envtype = "`{"Fn::GetOptionSetting": {"Namespace": "aws:elasticbeanstalk:application:environment", "OptionName": "AspNetCoreEnv"}}`"
          $envtype | Out-File c:\cfn\set-aspnetcore-environment.txt 
          [Environment]::SetEnvironmentVariable("ASPNETCORE_ENVIRONMENT", $envtype, "Machine")
commands:
    01_writeenv:
       command: powershell.exe -ExecutionPolicy Bypass -File c:\\cfn\\set-aspnetcore-environment.ps1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM