クイック スタート: Dockerfile を使って Azure Container Apps で最初の Java アプリケーションを稼働させる

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

Java アプリケーションをデプロイするには、次のようないくつかのオプションがあります。

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

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

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

前提条件

ローカル環境でプロジェクトをビルドする

次の手順を使って、ローカル コンピューターで Spring PetClinic アプリケーションをビルドします。

  1. 次のコマンドを使って、Azure Container Apps Java Samples リポジトリをクローンします。

    git clone https://github.com/Azure-Samples/azure-container-apps-java-samples.git
    
  2. 次のコマンドを使って、spring-petclinic フォルダーに移動します。

    cd azure-container-apps-java-samples/spring-petclinic/spring-petclinic/
    
  3. 次のコマンドを使って、PetClinic アプリケーションを初期化して最新バージョンに更新します。

    git submodule update --init --recursive
    
  4. 次のコマンドを使って、PetClinic アプリケーションをビルドします。

    ./mvnw clean install
    
  5. 次のコマンドを使って、アプリケーションをローカル環境で実行します。

    ./mvnw spring-boot:run
    
  6. アプリケーションが起動したら、http://localhost:8080 を使ってローカル環境でそれにアクセスします。

PetClinic アプリケーションを Azure Container Apps にデプロイする

次の手順を使って、PetClinic アプリケーションを Azure Container Apps にデプロイします。

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

    export RESOURCE_GROUP="pet-clinic-container-apps"
    export LOCATION="canadacentral"
    export ENVIRONMENT="env-pet-clinic-container-apps"
    export CONTAINER_APP_NAME="pet-clinic"
    
  2. Azure にまだサインインしていない場合は、CLI からサインインします。 詳しくは、「ローカル ソース コードから Azure Container Apps へのビルドとデプロイを行う」の「セットアップ」セクションをご覧ください。

  3. 次のコマンドを使って、Spring PetClinic アプリをビルドしてデプロイします。 .. (ドット ドット) は、親フォルダーにある Dockerfile を使っていることを示します。

    az containerapp up \
        --resource-group $RESOURCE_GROUP \
        --name $CONTAINER_APP_NAME \
        --location $LOCATION \
        --environment $ENVIRONMENT \
        --source ..
    

    このコマンドは、次のタスクを実行します。

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

アプリの状態を確認する

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

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

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

az group delete --name $RESOURCE_GROUP