

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon ECS への ASP.NET Core 2.0 アプリケーションのデプロイ (Fargate) (レガシー)
<a name="deployment-ecs-aspnetcore-fargate"></a>

**重要**  
このドキュメントでは、従来のサービスと機能について言及しています。更新されたガイドとコンテンツについては、「[AWS .NET Deployment tool](https://aws.github.io/aws-dotnet-deploy/)」ガイドと、目次にある更新された「[AWSへのデプロイ](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/deployment-chapt.html)」を参照してください。

このセクションでは、 Toolkit for Visual Studioの一部として提供される **[ AWSにコンテナを発行]** ウィザードにより、Fargate 起動タイプを使用してAmazon ECS経由でLinux 向けコンテナ化 ASP.NET Core 2.0 アプリケーションをデプロイする方法について説明します。ウェブアプリケーションは継続的に実行されるため、サービスとしてデプロイされます。

## コンテナを発行する前に
<a name="tkv-deploy-ecs-netcore-prerequisites"></a>

**[ AWSにコンテナを発行]** ウィザードを使用して ASP.NET Core 2.0 アプリケーションをデプロイする前に
+  [AWS 認証情報を指定](deployment-ecs-specify-credentials.md)し、[Amazon ECS をセットアップ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/get-set-up-for-amazon-ecs.html)します。
+  [Docker をインストールします](https://docs.docker.com/engine/installation)。[Docker for Windows](https://docs.docker.com/docker-for-windows/install/) などさまざまなインストールオプションがあります。
+ Visual Studio で、Linux をターゲットとする ASP.NET Core 2.0 コンテナ化アプリケーションのプロジェクトを作成します (または開きます) 。

## Publish Container to AWS ウィザードへのアクセス
<a name="tkv-deployment-ecs-netcore-accessing"></a>

Linux 用 ASP.NET Core 2.0 コンテナ化アプリケーションをデプロイするには、Solution Explorer でプロジェクトを右クリックし、**[ AWSにコンテナを発行]** を選択します。

![コンテナを公開する AWS オプションが強調表示されたコンテキストメニュー。](http://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step0a.png)


Visual Studio で [Build] (ビルド) メニューの **[Publish Container to AWS]** ( AWSにコンテナを発行) を選択することもできます。

## コンテナを AWS ウィザードに発行する
<a name="tkv-deploy-ecs-pubtoaws"></a>

![プロファイル、Docker イメージ、ECS デプロイ設定を使用して、コンテナを AWS ダイアログに発行します。](http://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step1.png)


 **Account profile to use (使用するアカウントのプロファイル)** - 使用するアカウントプロファイルを選択します。

 **Region (リージョン)** - デプロイリージョンを選択します。プロファイルとリージョンは、デプロイ環境リソースのセットアップとデフォルト Docker レジストリの選択に使用されます。

 **Configuration (設定)** - Docker イメージビルド設定を選択します。

 **Docker リポジトリ** - 既存の Docker リポジトリを選択するか、新しいリポジトリの名前を入力します (新しいリポジトリが作成されます)。これは、ビルドコンテナがプッシュされるリポジトリです。

 **Tag (タグ)** - 既存のタグを選択するか、新しいタグの名前を入力します。タグを使用して、Docker コンテナに固有の設定要素 (バージョン、オプションなど) のような重要な詳細を追跡できます。

 **Deployment Target (デプロイのターゲット)** - [**Service on an ECS Cluster (ECS クラスターのサービス)**] を選択します。このデプロイオプションは、実行時間の長いアプリケーション (ASP.NET ウェブアプリケーションなど) に使用します。

 **[`aws-docker-tools-defaults.json` に設定を保存して、コマンドラインデプロイのプロジェクトを設定する]** - コマンドラインから柔軟にデプロイしたいて場合には、このチェックボックスをオンにします。`dotnet ecs deploy` を使用してプロジェクトディレクトリからコンテナをデプロイし、`dotnet ecs publish` を使用してコンテナを発行します。

## [Launch Configuration (起動設定)] ページ
<a name="tkv-deploy-ecs-launch-configuration"></a>

![ECS クラスター 、起動タイプ、コンピューティング容量、ネットワーク設定を示す起動設定ダイアログ。](http://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step2.png)


 **ECS Cluster (ECS クラスター)** - Docker イメージを実行するクラスターを選択します。空のクラスターを作成する場合は、新しいクラスターの名前を入力します。

 **Launch Type (起動タイプ)** - [**FARGATE**] を選択します。

 **CPU Maximum (vCPU)** - アプリケーションに必要なコンピューティング性能の最大数を選択します。CPU とメモリの値の許容範囲を確認するには、「[タスクサイズ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html)」を参照してください。

 **Memory Maximum (GB) (最大メモリ (GB))** - アプリケーションで使用できるメモリの最大量を選択します。

 **VPC Subnets (VPC サブネット)** - 1 つの VPC の 1 つ以上のサブネットを選択します。複数のサブネットを選択すると、タスクはそれらのサブネット間で分散されます。これにより、可用性が向上します。詳細については、「[デフォルトの VPC とサブネット](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html)」を参照してください。

 **Security Groups (セキュリティグループ)** - セキュリティグループを選択します。

セキュリティグループは、関連付けられた Amazon EC2 インスタンスのファイアウォールとして動作し、インバウンドトラフィックとアウトバウンドトラフィックの両方をインスタンスレベルでコントロールします。

 [デフォルトセキュリティグループ](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html)は、同じセキュリティグループに割り当てられたインスタンスからのインバウンドトラフィックとすべてのアウトバウンド IPv4 トラフィックを許可するように設定されています。サービスがコンテナリポジトリに到達できるように、アウトバウンドトラフィックを許可している必要があります。

 **Assign Public IP Address (パブリック IP アドレスの割り当て)** - タスクをインターネットからアクセス可能にするには、このチェックボックスをオンにします。

## [Service Configuration (サービス設定)] ページ
<a name="tkv-deploy-ecs-service"></a>

![タスク数、最小正常率、最大率のフィールドを含むサービス設定ページ。](http://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step3.png)


 **Service (サービス)** - 既存のサービス内にコンテナをデプロイするには、ドロップダウンリストでいずれかのサービスを選択します。または、新しいサービスを作成するには、[**Create New (新規作成)**] を選択します。サービス名は同じクラスター内で一意になるようにしてください。ただし、リージョン内のクラスター間や複数のリージョンにまたがるクラスター間では、同様の名前のサービスがあっても構いません。

 **Number of Tasks (タスクの数)** - クラスターにデプロイして実行状態に保つタスクの数。各タスクはコンテナの 1 つのインスタンスです。

 **Minimum Healthy Percent (最小ヘルス率)** - デプロイ中に `RUNNING` 状態に保つ必要のあるタスクの最小割合 (最も近い整数に切り上げ)。

 **Maximum Percent (最大率)** - デプロイ中に `RUNNING` または `PENDING` 状態に保つことのできるタスクの最大割合 (最も近い整数に切り下げ)。

## [Application Load Balancer (アプリケーションロードバランサー)] ページ
<a name="tkv-deploy-ecs-app-load-balancer"></a>

![Application Load Balancer ロードバランサーとターゲットグループの設定を含む設定ダイアログ。](http://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step4.png)


 **Configure Application Load Balancer (アプリケーションロードバランサーの設定)** - Application Load Balancer を設定するには、このチェックボックスをオンにします。

 **Load Balancer (ロードバランサー)** - 既存のロードバランサーを選択するか、[**Create New (新規作成)**] を選択して新しいロードバランサーの名前を入力します。

 **Listener Port (リスナーポート)** - 既存のリスナーポートを選択するか、[**Create New (新規作成)**] を選択してポート番号を入力します。デフォルトのポート `80` はほとんどのウェブアプリケーションに適しています。

 **[Target Group]** (ターゲットグループ) - Amazon ECS がサービスに対するタスクを登録するターゲットグループを選択します。

 **Path Pattern (パスパターン)** - ロードバランサーがパスベースのルーティングを使用するようになります。デフォルトの `/` を受け入れるか、別のパターンを指定します。パスパターンでは大文字と小文字が区別され、最大 128 文字までの長さで、[特定の文字セット](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions)を含めることができます。

 **Health Check Path (ヘルスチェックパス)** - ヘルスチェックのターゲットの ping 先のパス。デフォルトでは、`/` です。必要に応じて別のパスを入力します。入力したパスが無効な場合、ヘルスチェックは失敗し、異常とみなされます。

複数のサービスをデプロイし、各サービスが異なるパスまたは場所にデプロイされる場合は、カスタムチェックパスが必要になります。

## [Task Definition (タスク定義)] ページ
<a name="tkv-deploy-ecs-task-definition"></a>

![ASPNETCoreSample コンテナのデプロイ先の設定を示すタスク定義ページ AWS 。](http://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step5.png)


 **Task Definition (タスク定義)** - 既存のタスク定義を選択するか、[**Create New (新規作成)**] を選択して新しいタスク定義の名前を入力します。

 **Container (コンテナ)** - 既存のコンテナを選択するか、[**Create New (新規作成)**] を選択して新しいコンテナの名前を入力します。

 **タスクロール** - アプリケーションが AWS サービスにアクセスするために必要な認証情報を持つ IAM ロールを選択します。これは、アプリケーションに認証情報が渡される方法になります。「[アプリケーション用に AWS セキュリティの認証情報を指定する方法](deployment-ecs-specify-credentials.md)」を参照してください。

 **タスク実行ロール** - プライベートイメージをプルしてログを発行するアクセス許可を持つロールを選択します。 AWS Fargate はユーザーに代わってそれを使用します。

 **Port Mapping (ポートマッピング)** - 自動的に割り当てられたホストポートにバインドされるコンテナポートの番号を選択します。

 **Environment Variables (環境変数)** - コンテナの環境変数を追加、変更、または削除します。環境変数はデプロイに合わせて変更できます。

設定に問題がなければ、**[発行]** をクリックしてデプロイプロセスを開始します。

## へのコンテナの発行 AWS
<a name="tkv-deploy-ecs-publishing"></a>

![完了したタスクのデプロイの進行状況を示すコンテナを AWS ウィザードに発行する。](http://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step6.png)


デプロイ中にイベントが表示されます。ウィザードは正常終了時に自動的に閉じられます。この動作を無効にするには、ページの下部にあるチェックボックスをオフにします。

新しいインスタンスの URL は AWS Explorer にあります。[Amazon ECS and Clusters (Amazon ECS およびクラスター)] を展開し、クラスターをクリックします。