次の方法で共有


Java Web アプリをビルドしてデプロイする

Azure DevOps Services

Web アプリは、Web アプリケーションをホストするための軽量な方法です。 このステップ バイ ステップ ガイドでは、Java アプリを継続的にビルドしてデプロイするパイプラインを作成する方法について説明します。 各コミットは GitHub で自動的にビルドされ、Azure App Service にデプロイされます。 任意のランタイム、Tomcat、または Java SE を使用できます。

詳細については、「 Java for Azure App Service」を参照してください。

ヒント

Java アプリのみをビルドする場合は、「Java アプリの ビルド」を参照してください。

[前提条件]

製品 要件
Azure DevOps - Azure DevOps プロジェクト
- Microsoft がホストするエージェントでパイプラインを実行する機能。 並列ジョブを購入するか、Free レベルを要求できます。
- YAML と Azure Pipelines に関する基本的な知識。 詳細については、「最初のパイプラインの作成」を参照してください。
- アクセス許可:
     - パイプラインを作成するには、 共同作成者 グループに含まれている必要があり、グループには [ ビルド パイプラインの作成 ] アクセス許可が [許可] に設定されている必要があります。 プロジェクト管理者グループのメンバーは、パイプラインを管理できます。
    - サービス接続を作成するには、サービス接続の管理者ロールまたは作成者ロールが必要です。
GitHubの - GitHub アカウント。
- Azure Pipelines を承認するための GitHub サービス接続
紺碧 Azure サブスクリプション
製品 要件
Azure DevOps - Azure DevOps プロジェクト
- セルフホステッド エージェント。 作成する方法については、「セルフホステッド エージェント」を参照してください。
- YAML と Azure Pipelines に関する基本的な知識。 詳細については、「最初のパイプラインの作成」を参照してください。
- アクセス許可:
    - パイプラインを作成するには、 共同作成者 グループに含まれている必要があり、グループには [ ビルド パイプラインの作成 ] アクセス許可が [許可] に設定されている必要があります。 プロジェクト管理者グループのメンバーは、パイプラインを管理できます。
    - サービス接続を作成するには、サービス接続の管理者ロールまたは作成者ロールが必要です。
GitHubの - GitHub アカウント。
- Azure Pipelines を承認するための GitHub サービス接続
紺碧 Azure サブスクリプション

コードを取得する

使用するランタイムを選択します。

デプロイするアプリが GitHub に既にある場合は、そのコードのパイプラインを作成できます。

新しいユーザーの場合は、GitHub で次のリポジトリをフォークします。

https://github.com/spring-petclinic/spring-framework-petclinic

Azure App Service を作成する

Azure Portal にサインインし、右上隅にある Cloud Shell ボタンを選択します。

Azure App Service on Linux を作成します。

# Create a resource group
az group create --___location eastus2 --name myapp-rg

# Create an app service plan of type Linux
az appservice plan create -g myapp-rg -n myapp-service-plan --is-linux

# Create an App Service from the plan with Tomcat and JRE 8 as the runtime
az webapp create -g myapp-rg -p myapp-service-plan -n my-app-name --runtime "TOMCAT|8.5-jre8"

パイプラインを作成する

  1. Azure DevOps 組織にサインインし、プロジェクトに移動します。

  2. [パイプライン] に移動し、最初のパイプラインを作成する場合は [新しいパイプライン] または [[パイプラインの作成] を選択します。

  3. 最初に、ソース コードの場所として GitHub を選択し、ウィザードの手順を実行します。

  4. サインインするために GitHub にリダイレクトされる場合があります。 その場合は、GitHub の資格情報を入力します。

  5. リポジトリの一覧が表示されたら、目的のリポジトリを選択します。

  6. Azure Pipelines アプリをインストールするために、GitHub にリダイレクトされる場合があります。 その場合は、[承認してインストール] を選択します。

  1. [構成] タブが表示されたら、[さらに表示] を選択し、Maven パッケージの Java プロジェクト Web App to Linux on Azure を選択します。

  2. パイプラインを作成するときに、 Azure Resource Manager サービス接続 を自動的に作成できます。 開始するには、リソース グループを作成した Azure サブスクリプションを選択します。

  3. [Validate and configure](検証および構成) を選択します。 新しいパイプラインには、新しい Azure Resource Manager サービス接続が含まれています。

    Azure Pipelines によって、CI/CD パイプラインを定義するazure-pipelines.yml ファイルが作成されると、次のようになります。

    • プロジェクトをビルドするビルド ステージと、Linux Web アプリとして Azure にデプロイするデプロイ ステージが含まれます。
    • Deploy ステージの一部として、Web アプリと同じ既定の名前を持つ 環境 も作成します。 環境名の変更を選択できます。
  4. すべての既定の入力がコードに適していることを確認します。

  5. [保存して実行] を選択すると、azure-pipelines.yml ファイルがリポジトリに追加されるため、コミット メッセージの入力を求められます。 メッセージを編集したら、[ 保存] を選択してもう一度実行し、パイプラインの動作を確認します。

パイプラインの実行とアプリのデプロイを確認する

パイプラインを実行すると、ビルドとデプロイのステージが青 (実行中) から緑 (完了) に移行します。 パイプラインの動作を監視するには、ステージとジョブを選択します。

パイプライン実行後、サイトをご確認ください。

https://my-app-name.azurewebsites.net/petclinic

また、"環境" に移動して、アプリのデプロイ履歴を調べることもできます。 パイプラインの概要から:

  1. 環境タブを選択します。
  2. [環境を表示する] を選択します。

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

作成したリソースを使い終わったら、次のコマンドを使用してリソースを削除できます。

az group delete --name myapp-rg

プロンプトが表示されたら、「y」を入力します。

次のステップ