AWS Elastic Beanstalk
開発者ガイド

AWS Elastic Beanstalk .NET プラットフォームを使用する

AWS Elastic Beanstalk は、さまざまなバージョンの .NET プログラミングフレームワークおよび Windows Server のプラットフォームを多数サポートしています。完全なリストについては、AWS Elastic Beanstalk プラットフォームドキュメントの「IIS を使用する Windows Server での .NET」を参照してください。

Elastic Beanstalk には、Elastic Beanstalk 環境内の EC2 インスタンスで実行されるソフトウェアのカスタマイズに使用できる設定オプションが用意されています。アプリケーションの環境変数を設定し、Amazon S3 へのログローテーションを有効にし、.NET フレームワークを設定することができます。

プラットフォームに固有の設定オプションは AWS マネジメントコンソール で実行中の環境の設定を変更するために利用できます。環境を終了したときにその設定が失われないようにするため、保存済み設定を使用して設定を保存し、それを後で他の環境に適用することができます。

ソースコードの設定を保存する場合、設定ファイルを含めることができます。設定ファイルの設定は、環境を作成するたびに、またはアプリケーションをデプロイするたびに適用されます。設定ファイルを使用して、デプロイの間にパッケージをインストールしたり、スクリプトを実行したり、他のインスタンスのカスタマイズオペレーションを実行することもできます。

AWS マネジメントコンソール で適用される設定は、設定ファイルに同じ設定があれば、それらの設定を上書きします。これにより、設定ファイルでデフォルト設定を定義し、コンソールでそのデフォルト設定を環境固有の設定で上書きできます。設定の優先順位の詳細と設定の他の変更方法については、「設定オプション」を参照してください。

AWS マネジメントコンソール での .NET 環境の設定

AWS マネジメントコンソール では、Amazon S3 のログローテーションを有効にしたり、アプリケーションが環境から読み取ることができる変数を設定したり、.NET フレームワーク設定を変更することができます。

Elastic Beanstalk コンソールで .NET 環境を設定するには

  1. Elastic Beanstalk コンソール を開きます。

  2. お客様の環境の管理ページに移動します。

  3. [Configuration] を選択します。

  4. [ソフトウェア] 設定カードで、[変更] を選択します。

コンテナオプション

  • Target .NET runtime – CLR v2 を実行するには 2.0 に設定します。

  • 32 ビットアプリケーションの有効化 – 32 ビットアプリケーションを実行するには True に設定します。

ログオプション

[Log Options (ログオプション)] セクションには、2 つの設定があります。

  • インスタンスプロファイル – アプリケーションに関連付けられた Amazon S3 バケットへのアクセス許可が付与されているインスタンスプロファイルを指定します。

  • Enable log file rotation to Amazon S3 – アプリケーションの Amazon EC2 インスタンスのログファイルを、アプリケーションに関連付けられている Amazon S3 バケットにコピーするかどうかを指定します。

環境プロパティ

環境プロパティ セクションでは、アプリケーションを実行している Amazon EC2 インスタンスの環境設定を指定できます。これらの設定は、キーと値のペアでアプリケーションに渡されます。System.GetEnvironmentVariable を使用して、それらのペアを読み取ります。同じキーが web.config に存在するとともに、環境プロパティとして存在する可能性があります。System.Configuration 名前空間を使用して、web.config から値を読み取ります。

NameValueCollection appConfig = ConfigurationManager.AppSettings; string endpoint = appConfig["API_ENDPOINT"];

注記

Elastic Beanstalk は、デプロイマニフェストを使用する .NET Core アプリケーションや複数アプリケーションの IIS デプロイへの環境変数の引き渡しはサポートしていません。

詳細については、「環境プロパティとその他のソフトウェアの設定」を参照してください。

aws:elasticbeanstalk:container:dotnet:apppool 名前空間

設定ファイル を使用して、設定オプションを設定し、デプロイの間、他のインスタンス設定タスクを実行できます。 設定オプションは、Elastic Beanstalk サービスまたは使用できるプラットフォームで定義し、名前空間に整理できます。

.NET プラットフォームは、.NET ランタイムの設定に使用できる aws:elasticbeanstalk:container:dotnet:apppool 名前空間のオプションを定義します。

以下の設定ファイルの例では、この名前空間で使用できる各オプションの設定を示しています。

例 .ebextensions/dotnet-settings.config

option_settings: aws:elasticbeanstalk:container:dotnet:apppool: Target Runtime: 2.0 Enable 32-bit Applications: True

Elastic Beanstalk には、環境をカスタマイズするための多数の設定オプションが用意されています。設定ファイルに加えて、コンソール、保存された設定、EB CLI、または AWS CLI を使用して、設定オプションを指定することもできます。詳細については、「設定オプション」を参照してください。