Amazon ECS への ASP.NET Core 2.0 アプリケーションのデプロイ (Fargate) (レガシー) - AWS Toolkit for Visual Studio

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

Amazon ECS への ASP.NET Core 2.0 アプリケーションのデプロイ (Fargate) (レガシー)

重要

このドキュメントでは、従来のサービスと機能について説明しています。更新されたガイドとコンテンツについては、AWS.NET デプロイツールガイドと更新された Deploying toAWS の目次を参照してください。

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

コンテナを発行する前に

[Publish Container to AWS] (AWS にコンテナを発行) ウィザードを使用して ASP.NET Core 2.0 アプリケーションをデプロイする前に

[Publish Container to AWS] (AWS にコンテナを発行) ウィザードへのアクセス

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

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

[Publish Container to AWS] (AWS にコンテナを発行) ウィザード

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

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

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

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

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

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

Save settings to aws-docker-tools-defaults.json and configure project for command line deployment (aws-docker-tools-defaults.json に設定を保存して、コマンドラインデプロイのプロジェクトを設定する) - コマンドラインから柔軟にデプロイしたいて場合には、このチェックボックスをオンにします。dotnet ecs deploy を使用してプロジェクトディレクトリからコンテナをデプロイし、dotnet ecs publish を使用してコンテナを発行します。

[Launch Configuration (起動設定)] ページ

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

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

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

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

VPC Subnets (VPC サブネット) - 1 つの VPC の 1 つ以上のサブネットを選択します。複数のサブネットを選択すると、タスクはそれらのサブネット間で分散されます。これにより、可用性が向上します。詳細については、「デフォルトの VPC とサブネット」を参照してください。

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

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

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

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

[Service Configuration (サービス設定)] ページ

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

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

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

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

[Application Load Balancer (アプリケーションロードバランサー)] ページ

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

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

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

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

Path Pattern (パスパターン) - ロードバランサーがパスベースのルーティングを使用するようになります。デフォルトの / を受け入れるか、別のパターンを指定します。パスパターンでは大文字と小文字が区別され、最大 128 文字までの長さで、特定の文字セットを含めることができます。

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

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

[Task Definition (タスク定義)] ページ

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

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

Task Role (タスクロール) - アプリケーションが AWS サービスにアクセスするための認証情報がある IAM ロールを選択します。これは、アプリケーションに認証情報が渡される方法になります。「アプリケーション用に AWS セキュリティの認証情報を指定する方法」を参照してください。

Task Execution Role (タスク実行ロール) - プライベートイメージをプルしてログを公開するアクセス許可を持つロールを選択します。AWSFargate がユーザーに代わってそのロールを使用します。

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

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

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

AWS へのコンテナの発行

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

新しいインスタンスの URL は AWS Explorer で見つけることができます。[Amazon ECS and Clusters (Amazon ECS およびクラスター)] を展開し、クラスターをクリックします。