Azure Container Apps を使用すると、サーバーレス プラットフォームでマイクロサービスとコンテナー化されたアプリケーションを実行できます。 Container Appsを使用すると、クラウドインフラストラクチャや複雑なコンテナーオーケストレーターを手動で管理する必要がなくなり、コンテナーを実行するメリットが得られます。
このチュートリアルでは、コンテナー化された ASP.NET Core 10.0 アプリケーションを、Visual Studioを使用してAzure Container Appsにデプロイします。 ここでの手順は、以前のバージョンの ASP.NET Coreにも適用されます。
前提条件
- アクティブなサブスクリプションを持つ Azure アカウント。 アカウントがない場合は、無料でアカウントを作成することができます。
- Visual Studio 2026 または Visual Studio 2022 バージョン 17.2 以降。無料でダウンロードできます。
プロジェクトの作成
コンテナー化された ASP.NET Core アプリケーションを作成します。
Visual Studioで、[ファイル] を選択し、[新規>Project/ソリューション] を選択します。
ダイアログで ASP.NET を検索し、[Web アプリ ASP.NET Core選択し、[次へ] を選択します。
[プロジェクト名] フィールドで、アプリケーションに MyContainerApp という名前を付け、次に [次へ] を選択します。
[ 追加情報 ] 画面で、[ コンテナーのサポートを有効にする] を選択します。 コンテナー OS 設定で Linux が選択されていることを確認します。
このチュートリアルでは、Linux コンテナーを使用します。 これを選択すると、既定でプロジェクト テンプレートでコンテナー化がサポートされるようになります。 有効になっている間、プロジェクトは実行時またはビルド時にコンテナーを使用します。
コンテナーのビルドの種類として、Dockerfile を選択します。
[作成] を選択すると、Visual Studio によってプロジェクトが作成され、読み込まれます。
Azure Container Apps をデプロイする
プロジェクト テンプレートで "Docker を有効にする" 設定を選択したため、アプリケーションには Dockerfile が含まれています。 Visual Studioでは、Dockerfile を使用して、Azure Container Appsで実行されるコンテナー イメージをビルドします。
このプロセスの詳細については、「Visual Studioでコンテナーをカスタマイズする」を参照してください。
これで、アプリケーションを Azure Container Apps にデプロイする準備が整いました。
リソースの作成
Visual Studioの [発行] ウィンドウは、既存のAzure リソースを選択したり、デプロイ用に新しいリソースを作成したりするのに役立ちます。 このプロセスでは、コンテナー イメージもビルドされ、イメージがAzure Container Registryにプッシュされ、新しいコンテナー アプリ イメージがデプロイされます。
MyContainerApp プロジェクト ノードを右クリックして [公開] を選択します。
ダイアログ ボックスで、公開オプションの一覧から [Azure] を選択し、次に [次へ] を選択します。
[特定のターゲット] 画面で、[Azure Container Apps (Linux)] を選択し、[次へ] を選択します。
プロジェクトをホストするAzureコンテナー アプリを作成します。 緑色の アイコンの横にある [+] を選択します。 [新規作成] ダイアログ ボックスで、次の値を入力します。
コンテナー アプリ名:
msdocscontainerappと名前を入力します。サブスクリプション名: アプリをホストするサブスクリプションを選択します。
リソース グループ: リソース グループは、Azure で関連するリソースを整理するための論理コンテナーとして機能します。 既存のリソース グループを選択するか、[ 新規 ] を選択して、選択した名前 (
msdocscontainerappsなど) を作成できます。Container Apps 環境: すべてのコンテナー アプリは、コンテナー アプリ環境の一部である必要があります。 環境によって、1 つまたは複数のコンテナー アプリ用の分離されたネットワークが提供されるため、相互に簡単に呼び出すことができます。 [ 新規 ] を選択して、コンテナー アプリ環境のダイアログを開きます。 既定値のままにして [OK] を選択し、[環境] ダイアログを閉じます。
コンテナー名: この値は、このコンテナー アプリで実行されるコンテナーのフレンドリ名です。 このクイックスタートでは、名前
msdocscontainer1を使用します。 通常、コンテナー アプリでは 1 つのコンテナーが実行されますが、複数のコンテナーが必要になる場合もあります。 このような例の 1 つは、特化されたログ記録や通信などのアクティビティを実行するためにサイドカー コンテナーが必要な場合です。
[ 作成] を選択して、コンテナー アプリの作成を完了します。 Visual Studio と Azure によって、必要なリソースが自動的に作成されます。 このプロセスには数分かかる場合があります。 先に実行してから、次の手順に進んでください。
リソースが作成されたら、[ 次へ] を選択します。
レジストリ画面では、既存のレジストリを選択するか、新しいレジストリを作成することができます。 新しいものを作成するには、緑色の アイコンの横にある [+] を選択します。 [ 新規作成 ] 画面で、次の値を入力します。
-
DNS プレフィックス: 任意の値
msdocscontainerregistryまたは名前を入力します。 - サブスクリプション名: 使用するサブスクリプションを選択します。 選択できる選択肢は 1 つだけです。
- リソースグループ: 前に作成した msdocs リソース グループを選択します。
- SKU: [Standard] を選択します。
- レジストリの場所: 地理的に近いリージョンを選択します。
-
DNS プレフィックス: 任意の値
これらの値を設定したら、[ 作成] を選択します。 しばらくすると、Visual Studio と Azure によってレジストリが作成されます。
コンテナー レジストリが作成されたら、コンテナー レジストリが選択されていることを確認し、[ 完了] を選択します。 しばらくすると、Visual Studio によって発行プロファイルが作成されます。 Visual Studio は、この発行プロファイルにユーザーによって選択された発行オプションとリソースを保存するため、ユーザーは必要に応じてすばやく再発行を行うことができます。 ダイアログは、完了後に閉じることができます。
Visual Studio を使用してアプリを発行する
リソースと発行プロファイルが作成されている間でも、アプリを発行して Azure にデプロイする必要があります。
[発行プロファイル] 画面の右上にある [発行] を選択して、Azure で作成したコンテナー アプリにデプロイします。 この処理には時間がかかる場合があるため、完了するまでお待ちください。
アプリのデプロイが完了すると、Visual Studio によってブラウザーが開き、デプロイされたサイトの URL が表示されます。 このページでは、適切なリソースがすべてプロビジョニングされていない場合、最初にエラーが表示されることがあります。 ブラウザーを定期的に更新して、デプロイが完全に完了したかどうかを確認します。
GitHub Actions を使用してアプリを発行する
GitHub Actionsを介して CI/CD を使用して Container Apps をデプロイすることもできます。 GitHub Actions は、プロジェクトの GitHub リポジトリを通して、開発ワークフローの自動化、カスタマイズ、実行を直接行うための強力なツールです。
Visual Studio で、発行しようとしているプロジェクトが GitHub でホストされていることが検出されると、発行フローで別のデプロイの種類ステップが表示されます。 このステージでは、クイックスタートで前述した手順を使用して Visual Studio で直接発行するか、GitHub Actions ワークフローを使用するかを開発者が選択できます。
GitHub Actionsワークフローを選択すると、Visual Studio生成された YAML ファイルを含め、プロジェクトのルート ディレクトリに .github フォルダーが作成されます。 YAML ファイルには、コードをプッシュするたびにアプリをビルドして Azure にデプロイするための GitHub Actions 構成が含まれています。
変更を加えてコードをプッシュすると、GitHub の [アクション] タブでビルドとデプロイプロセスの進行状況を確認できます。このページには、ワークフローの進行状況と正常性に関する詳細なログとインジケーターが表示されます。
ビルド ジョブとデプロイ ジョブの横に緑色のチェックマークが表示されたら、このワークフローは完了です。 Container Apps サイトを閲覧すると、最新の変更が適用されていることが確認できるはずです。 コンテナー アプリの URL は、Azure portal ページを使用していつでも見つけることができます。
リソースをクリーンアップする
このアプリケーションを使用する予定がない場合は、リソース グループを削除することで、Azure Container Apps インスタンスと関連するすべてのサービスを削除できます。
作成したリソースを削除するには、Azure portal で以下の手順を実行してください。
"概要" セクションで、msdocscontainerapps リソース グループを選択します。
リソース グループ ページの [概要] の上部で [リソース グループの削除] ボタンを選択します。
削除を確認するには、リソース グループ名 msdocscontainerapps を入力します。
削除を選択します。
リソース グループを削除するプロセスが完了するまでに数分かかる場合があります。
ヒント
問題がありますか? GitHub の Azure Container Apps リポジトリでイシューを開いて、お知らせください。