次の方法で共有


クイック スタート: GitHub リポジトリを使用して Azure Container Apps 内で最初の Java アプリケーションを起動する

この記事では、GitHub リポジトリを使用して Spring PetClinic サンプル アプリケーションを Azure Container Apps にデプロイする方法について説明します。

Java アプリケーションをデプロイするには、次のオプションを含め、いくつかのオプションが使用可能です。

  • ローカル ファイル システムからのまたはコード リポジトリからのデプロイ。
  • Maven または IDE を使用したデプロイ。
  • WAR ファイル、JAR ファイル、または直接ソース コードを使用したデプロイ。

このチュートリアルを終えるまでに、Azure portal を使用して管理できる Web アプリケーションをデプロイします。 次のスクリーンショットは、Azure Container Apps にデプロイされた PetClinic アプリケーションのホーム ページを示しています。

PetClinic アプリのホーム ページのスクリーンショット。

前提条件

プロジェクトを準備する

Azure Container Apps Java Samples」リポジトリ ページ上の [Fork] ボタンを使用して、リポジトリを個人用 GitHub アカウントにフォークします。 フォークが完了したら、次のセクションの中で使用するフォークの URL をコピーします。

プロジェクトをデプロイする

次の手順を使用してプロジェクトをデプロイします。

  1. 次のコマンドを使用して、必要な環境変数を設定します。

    export RESOURCE_GROUP="pet-clinic-container-apps"
    export LOCATION="canadacentral"
    export ENVIRONMENT="env-pet-clinic-container-apps"
    export CONTAINER_APP_NAME="pet-clinic"
    export REPO_URL="<URL-of-your-GitHub-repo-fork>"
    
  2. まだサインインしていない場合は、CLI から Azure にサインインします。 詳細については「クイック スタート: ローカル ソース コードから Azure Container Apps へのビルドとデプロイを行う」の「セットアップ」セクションを参照してください。

  3. 次のコマンドを使用して、Spring Boot アプリをビルドおよびデプロイします。

    az containerapp up \
        --resource-group $RESOURCE_GROUP \
        --name $CONTAINER_APP_NAME \
        --location $LOCATION \
        --environment $ENVIRONMENT \
        --context-path ./spring-petclinic \
        --repo $REPO_URL
    

    このコマンドでは次のタスクが実行されます。

    • リソース グループを作成する。
    • Azure Container Registry を作成する。
    • コンテナー イメージをビルドして、それをレジストリにプッシュする。
    • Log Analytics ワークスペースを使用して Container Apps 環境を作成する。
    • ビルドされたコンテナー イメージを使用して、コンテナー アプリを作成およびデプロイする。

プロジェクトがデプロイされました。 新しいコードをリポジトリにプッシュすると、GitHub アクションによって次のタスクが実行されます。

  • コンテナー イメージをビルドし、それを Azure Container Registry にプッシュする。
  • 作成されたコンテナー アプリにコンテナー イメージをデプロイする。

アプリの状態を確認する

デプロイが完了したら、Azure portal でそのコンテナー アプリの [概要] ページに移動し、[アプリケーション URL] を選択して、クラウド内で実行されているアプリケーションを確認します。

リソースをクリーンアップする

その他のクイックスタートおよびチュートリアルの作業を続ける場合は、これらのリソースをそのままにしておいてかまいません。 リソースが不要になったら、次のコマンドを使用してそれらを削除し、Azure の料金がかからないようにすることができます。

az group delete --name $RESOURCE_GROUP