QuickStart: をデプロイします。NET Windows アプリケーションの Core から Elastic Beanstalk - AWS Elastic Beanstalk

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

QuickStart: をデプロイします。NET Windows アプリケーションの Core から Elastic Beanstalk

この QuickStart チュートリアルでは、 を作成するプロセスについて説明します。NET Windows アプリケーション上の Core を AWS Elastic Beanstalk 環境にデプロイします。

注記

この QuickStart チュートリアルはデモンストレーションを目的としています。このチュートリアルで作成したアプリケーションを本番トラフィックに使用しないでください。

AWS アカウント

まだ AWS 顧客でない場合は、 AWS アカウントを作成する必要があります。サインアップすると、Elastic Beanstalk やその他の必要な AWS サービスにアクセスできます。

AWS アカウントを既にお持ちの場合は、 に移動できます前提条件

にサインアップする AWS アカウント

がない場合は AWS アカウント、次の手順を実行して作成します。

にサインアップするには AWS アカウント
  1. https://portal.aws.amazon.com/billing/サインアップ を開きます。

  2. オンラインの手順に従います。

    サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。

    にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。

AWS は、サインアッププロセスが完了した後に確認 E メールを送信します。/ に移動し、マイアカウント を選択すると、いつでも現在のアカウントアクティビティを表示https://aws.amazon.comし、アカウントを管理できます。

管理アクセスを持つユーザーを作成する

にサインアップしたら AWS アカウント、 のセキュリティを確保し AWS アカウントのルートユーザー、 を有効にして管理ユーザーを作成し AWS IAM Identity Center、日常的なタスクにルートユーザーを使用しないようにします。

のセキュリティ保護 AWS アカウントのルートユーザー
  1. ルートユーザーを選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者AWS Management Consoleとして にサインインします。次のページでパスワードを入力します。

    ルートユーザーを使用してサインインする方法については、AWS サインイン ユーザーガイドルートユーザーとしてサインインするを参照してください。

  2. ルートユーザーの多要素認証 (MFA) を有効にします。

    手順については、「 ユーザーガイド」の AWS アカウント 「ルートユーザー (コンソール) の仮想MFAデバイスの有効化」を参照してください。 IAM

管理アクセスを持つユーザーを作成する
  1. IAM Identity Center を有効にします。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「AWS IAM Identity Centerの有効化」を参照してください。

  2. IAM Identity Center で、ユーザーに管理アクセスを許可します。

    を ID ソース IAM アイデンティティセンターディレクトリ として使用する方法のチュートリアルについては、 AWS IAM Identity Center ユーザーガイド「デフォルトを使用してユーザーアクセスを設定する IAM アイデンティティセンターディレクトリ」を参照してください。

管理アクセス権を持つユーザーとしてサインインする
  • IAM Identity Center ユーザーでサインインするには、IAMIdentity Center ユーザーの作成時に E メールアドレスにURL送信されたサインインを使用します。

    IAM Identity Center ユーザーを使用してサインインする方法については、AWS サインイン 「 ユーザーガイド」の AWS 「 アクセスポータルにサインインする」を参照してください。

追加のユーザーにアクセス権を割り当てる
  1. IAM Identity Center で、最小権限のアクセス許可を適用するベストプラクティスに従うアクセス許可セットを作成します。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「権限設定を作成する」を参照してください。

  2. グループにユーザーを割り当て、そのグループにシングルサインオンアクセス権を割り当てます。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「グループの参加」を参照してください。

前提条件

注記

AWS 2024 年 10 月 1 日以降に作成された アカウントは、新しい環境を正常に作成するためのオプションを一時的に設定する必要があります。新しいアカウントと同様に、アカウントがまだ環境 を持っていないリージョンでのみ、既存のアカウントは同じアクションを実行する必要があります。詳細については、「テンプレートの起動」を参照してください。

このガイドの手順に従うには、run command のためのコマンドラインターミナルまたはシェルが必要になります。コマンドは、必要に応じて、プロンプト記号 (>) と現在のディレクトリの名前が先頭に表示されるリストに表示されます。

C:\eb-project> this is a command this is output

EB CLI

このチュートリアルでは、Elastic Beanstalk コマンドラインインターフェイス (EB ) を使用しますCLI。EB のインストールと設定の詳細についてはCLI、Elastic Beanstalk コマンドラインインターフェイスをインストールする「」および「」を参照してくださいEB CLI の設定

。NET Windows 上の Core

ローカルマシンに SDKをインストールしていない場合はNET、 ドキュメントウェブサイトの「ダウンロードNET」リンクに従ってインストールできます。 NET

次のコマンドを実行して、 NET. SDKのインストールを確認します。

C:\> dotnet --info

ステップ 1: を作成します。NET Windows アプリケーション上の Core

プロジェクトディレクトリを作成します。

C:\> mkdir eb-dotnetcore C:\> cd eb-dotnetcore

次に、次のコマンドを実行して、サンプル Hello World RESTfulウェブサービスアプリケーションを作成します。

C:\eb-dotnetcore> dotnet new web --name HelloElasticBeanstalk C:\eb-dotnetcore> cd HelloElasticBeanstalk

ステップ 2: アプリケーションをローカルで実行する

次のコマンドを実行して、アプリケーションをローカルで実行します。

C:\eb-dotnetcore\HelloElasticBeasntalk> dotnet run

出力は次のテキストのようになります。

info: Microsoft.Hosting.Lifetime[14] Now listening on: https://localhost:7222 info: Microsoft.Hosting.Lifetime[14] Now listening on: http://localhost:5228 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down. info: Microsoft.Hosting.Lifetime[0] Hosting environment: Development info: Microsoft.Hosting.Lifetime[0] Content root path: C:\Users\Administrator\eb-dotnetcore\HelloElasticBeanstalk
注記

dotnet コマンドは、アプリケーションをローカルで実行するときに、ポートをランダムに選択します。この例では、ポートは 5228 です。アプリケーションを Elastic Beanstalk 環境にデプロイすると、アプリケーションはポート 5000 で実行されます。

ウェブブラウザhttp://localhost:portにURLアドレスを入力します。この特定の例では、 コマンドは ですhttp://localhost:5228。ウェブブラウザに「Hello World!」と表示されます。

ステップ 3: をデプロイします。NET EB を使用した Windows アプリケーションの Core CLI

次のコマンドを実行して、このアプリケーションの Elastic Beanstalk 環境を作成します。

環境を作成し、 をデプロイするには。NET Windows アプリケーション上の Core
  1. HelloElasticBeanstalk ディレクトリで次のコマンドを実行して、アプリケーションを公開して圧縮します。

    C:\eb-dotnetcore\HelloElasticBeasntalk> dotnet publish -o site C:\eb-dotnetcore\HelloElasticBeasntalk> cd site C:\eb-dotnetcore\HelloElasticBeasntalk\site> Compress-Archive -Path * -DestinationPath ../site.zip C:\eb-dotnetcore\HelloElasticBeasntalk\site> cd ..
  2. 次の内容aws-windows-deployment-manifest.jsonを使用して、 で HelloElasticBeanstalkという名前の新しいファイルを作成します。

    { "manifestVersion": 1, "deployments": { "aspNetCoreWeb": [ { "name": "test-dotnet-core", "parameters": { "appBundle": "site.zip", "iisPath": "/", "iisWebSite": "Default Web Site" } } ] } }
  3. eb init コマンドを使用して EB CLIリポジトリを初期化します。

    C:\eb-dotnetcore\HelloElasticBeasntalk> eb init -p iis dotnet-windows-server-tutorial --region us-east-2

    このコマンドは、 という名前のアプリケーションを作成しdotnet-windows-server-tutorial、最新の Windows サーバープラットフォームバージョンで環境を作成するようにローカルリポジトリを設定します。

  4. 環境を作成し、eb create を使用してそこにアプリケーションをデプロイします。Elastic Beanstalk は、アプリケーションの zip ファイルを自動的に構築し、ポート 5000 で起動します。

    C:\eb-dotnetcore\HelloElasticBeasntalk> eb create dotnet-windows-server-env

    Elastic Beanstalk が環境を作成するのに約 5 分かかります。

ステップ 4: Elastic Beanstalk でアプリケーションを実行する

環境を作成するプロセスが完了したら、 を使用してウェブサイトを開きますeb open

C:\eb-dotnetcore\HelloElasticBeasntalk> eb open

お疲れ様でした。をデプロイしました。NET Elastic Beanstalk を使用した Windows アプリケーションの Core! これにより、アプリケーション用に作成されたドメイン名を使用してブラウザ Window が開きます。

ステップ 5:クリーンアップ

アプリケーションの使用が終了したら、環境を終了できます。Elastic Beanstalk は、環境に関連付けられているすべての AWS リソースを終了します。

EB を使用して Elastic Beanstalk 環境を終了するには、次のコマンドCLIを実行します。

C:\eb-dotnetcore\HelloElasticBeasntalk> eb terminate

AWS アプリケーションの リソース

1 つのインスタンスアプリケーションを作成しました。1 つのEC2インスタンスで簡単なサンプルアプリケーションとして機能するため、ロードバランシングや自動スケーリングは必要ありません。単一インスタンスアプリケーションの場合、Elastic Beanstalk は次の AWS リソースを作成します。

  • EC2 インスタンス – 選択したプラットフォームでウェブアプリケーションを実行するように設定された Amazon EC2 仮想マシン。

    各プラットフォームは、それぞれ特定の言語バージョン、フレームワーク、ウェブコンテナ、またはそれらの組み合わせをサポートするための、さまざまなソフトウェア、設定ファイル、スクリプトを実行します。ほとんどのプラットフォームでは、ウェブアプリケーションの前にウェブトラフィックを処理するリバースプロキシとして Apache または nginx のいずれかを使用します。そのプロキシがリクエストをアプリケーションに転送し、静的アセットを提供して、アクセスログとエラーログを生成します。

  • インスタンスセキュリティグループ – ポート 80 で受信トラフィックを許可するように設定された Amazon EC2 セキュリティグループ。このリソースにより、ロードバランサーからのHTTPトラフィックがウェブアプリケーションを実行しているEC2インスタンスに到達できるようになります。デフォルトでは、トラフィックは他のポート上で許可されません。

  • Amazon S3 バケット – Elastic Beanstalk の使用時に作成されるソースコード、ログ、その他のアーティファクトの保存場所。

  • Amazon CloudWatch アラーム – 環境内のインスタンスの負荷をモニタリングし、負荷が高すぎるか低すぎる場合にトリガーされる 2 つの CloudWatch アラーム。アラームがトリガーされると、Auto Scaling グループはレスポンスとしてスケールアップまたはダウンを行います。

  • AWS CloudFormation スタック – Elastic Beanstalk は AWS CloudFormation を使用して環境内のリソースを起動し、設定変更を伝達します。リソースは、AWS CloudFormation コンソールに表示できるテンプレートで定義されます。

  • ドメイン名 - フォームでウェブアプリにルーティングするドメイン名 subdomain.region.elasticbeanstalk.com

Elastic Beanstalk は、これらのリソースをすべて管理します。環境を終了すると、Elastic Beanstalk は含まれているすべてのリソースを終了します。

次のステップ

アプリケーションを実行する環境を手に入れた後、アプリケーションの新しいバージョンや、異なるアプリケーションをいつでもデプロイできるようになります。新しいアプリケーションバージョンのデプロイは、EC2インスタンスのプロビジョニングや再起動を必要としないため、非常に高速です。Elastic Beanstalk コンソールを使用して新しい環境を調べることもできます。詳細な手順については、このガイドの開始方法の章の「環境を探索する」を参照してください。

その他のチュートリアルを試す

アプリケーション例が異なる他のチュートリアルを試したい場合は、「」を参照してくださいQuickStart の ASP。NET

サンプルアプリケーションを 2 つデプロイし、 の開発と実行を開始する準備が整いました。NET Windows アプリケーション上の Core をローカルで実行するには、「」を参照してください。 開発NET環境のセットアップ

Elastic Beanstalk コンソールを使用してデプロイする

Elastic Beanstalk コンソールを使用してサンプルアプリケーションを起動することもできます。詳細な手順については、このガイドの「開始方法」の「アプリケーション例の作成」を参照してください。