Azure App Service は、高度にスケーラブルで自己修正型の Web アプリ ホスティング サービスを提供します。 このクイックスタートでは、 Azure App Service Web Apps 用の Maven プラグイン を使用して、Java Web アプリケーションを Azure App Service の Linux Tomcat サーバーにデプロイします。
Maven が推奨される開発ツールでない場合は、Java 開発者向けの同様の記事を確認してください。
[前提条件]
-
Azure アカウントをお持ちでない場合は、開始する前に無料アカウントを作成してください。
このクイック スタートのコマンドを実行するには、ブラウザーで Azure サービスを操作するために使用できる対話型シェルである Azure Cloud Shell を使用します。 Cloud Shell を使用するには:
次の [Cloud Shell の起動 ] ボタンを選択するか、 https://shell.azure.com に移動してブラウザーで Cloud Shell を開きます。
必要に応じて Azure にサインインし、Cloud Shell の Bash 環境にいることを確認します。
コード ブロックで [コピー] を選択し、コードを Cloud Shell に貼り付けて実行します。
Java アプリを作成する
Cloud Shell で次の Maven コマンドを実行して、 helloworld
という名前の新しいアプリを作成します。
mvn archetype:generate "-DgroupId=example.demo" "-DartifactId=helloworld" "-DarchetypeArtifactId=maven-archetype-webapp" "-DarchetypeVersion=1.4" "-Dversion=1.0-SNAPSHOT"
次に、 cd helloworld
を実行して、作業ディレクトリをプロジェクト フォルダーに変更します。
Maven プラグインを構成する
App Service デプロイ プロセスでは、Cloud Shell の Azure 資格情報が自動的に使用されます。 Maven プラグインは、OAuth またはデバイスのサインインで認証されます。 詳細については、認証を参照してください。
次の Maven コマンドを実行し、App Service オペレーティング システム、Java バージョン、Tomcat のバージョンを設定してデプロイを構成します。
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.14.1:config
- [ 新しい実行構成の作成] に「 Y 」と入力し、 Enter キーを押します。
- [OS の値の定義] に「Linux の場合は 2」と入力し、Enter キーを押します。
- [JavaVersion の値の定義] に「Java 21 の 1」と入力し、Enter キーを押します。
- WebContainer の値を定義するには、Tomcat 10.1 に「1」と入力し、Enter キーを押します。
- PricingTier の値の定義に「3」と入力して P1V2 を選択し、Enter キーを押します。
- [ 確認] に「 Y 」と入力し、 Enter キーを押します。
出力は次のコードのようになります。
Please confirm webapp properties
AppName : helloworld-1745408005556
ResourceGroup : helloworld-1745408005556-rg
Region : centralus
PricingTier : P1V2
OS : Linux
Java Version: Java 21
Web server stack: Tomcat 10.1
Deploy to slot : false
Confirm (Y/N) [Y]:
[INFO] Saving configuration to pom.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:36 min
[INFO] Finished at: 2025-04-23T11:34:44Z
[INFO] ------------------------------------------------------------------------
選択内容を確認すると、プラグインによってプラグイン要素と必要な設定がプロジェクトの pom.xml ファイルに追加され、App Service で実行するように Web アプリが構成されます。
pom.xml ファイルの関連部分は、次の例のようになります。
<build>
<plugins>
<plugin>
<groupId>com.microsoft.azure</groupId>
<artifactId>>azure-webapp-maven-plugin</artifactId>
<version>x.xx.x</version>
<configuration>
<schemaVersion>v2</schemaVersion>
<resourceGroup>helloworld-1745408005556-rg</resourceGroup>
<appName>helloworld-1745408005556</appName>
...
</configuration>
</plugin>
</plugins>
</build>
デモ アプリの <appName>
と <resourceGroup>
、 helloworld-1745408005556
、 helloworld-1745408005556-rg
の値は、後で使用されます。
App Service の構成は、 pom.xml ファイル内で直接変更できます。
- 構成の完全な一覧については、「 共通構成」を参照してください。
- App Service に固有の構成については、「 Azure Web App: 構成の詳細」を参照してください。
アプリをデプロイする
pom.xml ファイル内のすべての構成の準備ができたら、次の 1 つのコマンドを使用して Java アプリを Azure にデプロイできます。
mvn package azure-webapp:deploy
使用可能なサブスクリプションの一覧から選択すると、Maven は Azure App Service にデプロイされます。 デプロイが完了すると、アプリケーションの準備が整います。
このデモでは、URL は http://helloworld-1745408005556.azurewebsites.net
。 ローカル Web ブラウザーで URL を開くと、次のアプリが表示されます。
お疲れさまでした。 App Service に Java アプリをデプロイしました。
リソースをクリーンアップする
このチュートリアルのリソースは、Azure リソース グループに作成しました。 必要がなくなった場合は、Cloud Shell で次の Azure CLI コマンドを実行して、リソース グループとそのすべてのリソースを削除できます。
az group delete --name helloworld-1745408005556-rg --yes
コマンドの実行に時間がかかる場合があります。
Azure App Service は、高度にスケーラブルで自己修正型の Web アプリ ホスティング サービスを提供します。 このクイックスタートでは、 Azure App Service Web Apps 用の Maven プラグイン を使用して、Spring Boot、Quarkus、または Tomcat サーバーが埋め込まれた Java Web アプリケーションを App Service にデプロイします。 詳細については、 azure-webapp-maven-plugin を参照してください。
Maven が推奨される開発ツールでない場合は、Java 開発者向けの同様の記事を確認してください。
[前提条件]
-
Azure アカウントをお持ちでない場合は、開始する前に無料アカウントを作成してください。
このクイック スタートのコマンドを実行するには、ブラウザーで Azure サービスを操作するために使用できる対話型シェルである Azure Cloud Shell を使用します。 Cloud Shell を使用するには:
次の [Cloud Shell の起動 ] ボタンを選択するか、 https://shell.azure.com に移動してブラウザーで Cloud Shell を開きます。
必要に応じて Azure にサインインし、Cloud Shell の Bash 環境にいることを確認します。
コード ブロックで [コピー] を選択し、コードを Cloud Shell に貼り付けて実行します。
サンプル アプリを入手する
適切なタブを選択し、手順に従ってサンプルの Spring Boot、Quarkus、または Embedded Tomcat Web アプリを取得します。
既定の Spring Boot Web アプリケーション テンプレートをダウンロードして抽出するか、次のコマンドを実行して複製します。 Spring CLI コマンドspring boot new my-webapp
実行すると、Web アプリも複製されます。
git clone https://github.com/rd-1-2022/rest-service my-webapp
次に、 cd my-webapp
を実行して、作業ディレクトリをプロジェクト フォルダーに変更します。
Maven プラグインを構成する
App Service デプロイ プロセスでは、Cloud Shell の Azure 資格情報が自動的に使用されます。 Maven プラグインは、OAuth またはデバイスのサインインで認証されます。 詳細については、認証を参照してください。
次の Maven コマンドを実行し、App Service オペレーティング システムと Java のバージョンを設定してデプロイを構成します。
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.14.1:config
- [ 新しい実行構成の作成] に「 Y 」と入力し、 Enter キーを押します。
- [OS の値の定義] に「Linux の場合は 2」と入力し、Enter キーを押します。
- [JavaVersion の値の定義] に「Java 21 の 1」と入力し、Enter キーを押します。
- PricingTier の値を定義するには 3 を入力して「P1v2」とし、Enter キーを押します。
- [ 確認] に「 Y 」と入力し、 Enter キーを押します。
出力は次のコードのようになります。
Please confirm webapp properties
AppName : <generated-app-name>
ResourceGroup : <generated-app-name>-rg
Region : centralus
PricingTier : P1v2
OS : Linux
Java Version: Java 21
Web server stack: Java SE
Deploy to slot : false
Confirm (Y/N) [Y]:
[INFO] Saving configuration to pom.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 47.533 s
[INFO] Finished at: 2025-04-23T12:20:08Z
[INFO] ------------------------------------------------------------------------
選択内容を確認すると、プラグインによってプラグイン要素と必要な設定がプロジェクトの pom.xml ファイルに追加され、App Service で実行するように Web アプリが構成されます。
pom.xml ファイルの関連部分は、次の例のようになります。
<build>
<plugins>
<plugin>
<groupId>com.microsoft.azure</groupId>
<artifactId>>azure-webapp-maven-plugin</artifactId>
<version>x.xx.x</version>
<configuration>
<schemaVersion>v2</schemaVersion>
<resourceGroup>generated-app-name-rg</resourceGroup>
<appName>generated-app-name</appName>
...
</configuration>
</plugin>
</plugins>
</build>
<appName>
と<resourceGroup>
の値は後で使用されます。
App Service の構成は、 pom.xml ファイル内で直接変更できます。
- 構成の完全な一覧については、「 共通構成」を参照してください。
- App Service に固有の構成については、「 Azure Web App: 構成の詳細」を参照してください。
アプリをデプロイする
pom.xml ファイル内のすべての構成の準備ができたら、Java アプリを Azure にデプロイできます。
次のコマンドを使用して JAR ファイルをビルドします。
mvn clean package
ヒント
Spring Boot では、
mvn package
を含む 2 つの JAR ファイルが生成されますが、azure-webapp-maven-plugin
は自動的にデプロイする適切な JAR ファイルを選択します。次のコマンドを使用して、アプリを Azure にデプロイします。
mvn azure-webapp:deploy
使用可能なサブスクリプションの一覧から選択すると、Maven は Azure App Service にデプロイされます。 デプロイが完了すると、アプリケーションの準備が整い、次の出力が表示されます。
[INFO] Successfully deployed the artifact to <URL> [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 02:20 min [INFO] Finished at: 2023-07-26T12:47:50Z [INFO] ------------------------------------------------------------------------
Azure portal の [概要 ] ページからアプリの既定のドメインを開き、URL に
/greeting
を追加します。 次のアプリが表示されます。
お疲れさまでした。 App Service に Java アプリをデプロイしました。
リソースをクリーンアップする
このチュートリアルのリソースは、Azure リソース グループに作成しました。 必要がなくなった場合は、Cloud Shell で次の Azure CLI コマンドを実行して、リソース グループとそのすべてのリソースを削除できます。
az group delete --name <resource group name> --yes
たとえば、 az group delete --name quarkus-hello-azure-1690375364238-rg --yes
を実行します。 このコマンドの実行には時間がかかる場合があります。
Azure App Service は、高度にスケーラブルで自己修正型の Web アプリ ホスティング サービスを提供します。 このクイック スタートでは、 Azure App Service Web Apps 用の Maven プラグイン を使用して、Java Web アプリケーションを Azure App Service の Linux JBoss EAP サーバーにデプロイします。
Maven が推奨される開発ツールでない場合は、Java 開発者向けの同様の記事を確認してください。
[前提条件]
-
Azure アカウントをお持ちでない場合は、開始する前に無料アカウントを作成してください。
このクイック スタートのコマンドを実行するには、ブラウザーで Azure サービスを操作するために使用できる対話型シェルである Azure Cloud Shell を使用します。 Cloud Shell を使用するには:
次の [Cloud Shell の起動 ] ボタンを選択するか、 https://shell.azure.com に移動してブラウザーで Cloud Shell を開きます。
必要に応じて Azure にサインインし、Cloud Shell の Bash 環境にいることを確認します。
コード ブロックで [コピー] を選択し、コードを Cloud Shell に貼り付けて実行します。
Java アプリを作成する
Pet Store デモ アプリケーションを複製します。
git clone https://github.com/Azure-Samples/app-service-java-quickstart
完成した
petstore-ee7
プロジェクトにディレクトリを変更し、ビルドします。cd app-service-java-quickstart git checkout 20230308 cd petstore-ee7 mvn clean install
デタッチされた HEAD 状態であることを示すメッセージが表示された場合は、無視してかまいません。 このクイックスタートでは Git コミットを行わないので、デタッチされた HEAD 状態が適切です。
ヒント
petstore-ee7
サンプルには Java 11 以降が必要です。booty-duke-app-service
サンプル プロジェクトには Java 17 が必要です。 インストールされている Java のバージョンが 17 未満の場合は、最上位レベルではなく 、petstore-ee7 ディレクトリ内からビルドを実行します。
Maven プラグインを構成する
App Service デプロイ プロセスでは、Cloud Shell の Azure 資格情報が自動的に使用されます。 Maven プラグインは、OAuth またはデバイスのサインインで認証されます。 詳細については、認証を参照してください。
次の Maven コマンドを実行し、App Service オペレーティング システム、Java バージョン、Jbosseap バージョンを設定してデプロイを構成します。
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.14.1:config
- [ 新しい実行構成の作成] に「 Y 」と入力し、 Enter キーを押します。
- [OS の値の定義] に「Linux の場合は 2」と入力し、Enter キーを押します。
- [JavaVersion の値の定義] に「Java 17 の 2」と入力し、Enter キーを押します。 Java 21 を選択した場合、 後で Jbosseap がオプションとして表示されません。
- [WebContainer の値の定義] に「Jbosseap 7」に「4」と入力し、Enter キーを押します。
- [ PricingTier の値の定義] に「 P1v3 」に「1」と入力し、 Enter キーを押します。
- [ 確認] に「 Y 」と入力し、 Enter キーを押します。
出力は次のコードのようになります。
Please confirm webapp properties
AppName : petstoreee7-1745409173307
ResourceGroup : petstoreee7-1745409173307-rg
Region : centralus
PricingTier : P1v3
OS : Linux
Java Version: Java 17
Web server stack: Jbosseap 4
Deploy to slot : false
Confirm (Y/N) [Y]:
[INFO] Saving configuration to pom.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:36 min
[INFO] Finished at: 2025-04-23T11:54:22Z
[INFO] ------------------------------------------------------------------------
選択内容を確認すると、プラグインによってプラグイン要素と必要な設定がプロジェクトの pom.xml ファイルに追加され、App Service で実行するように Web アプリが構成されます。
pom.xml ファイルの関連部分は、次の例のようになります。
<build>
<plugins>
<plugin>
<groupId>com.microsoft.azure</groupId>
<artifactId>>azure-webapp-maven-plugin</artifactId>
<version>x.xx.x</version>
<configuration>
<schemaVersion>v2</schemaVersion>
<resourceGroup>petstoreee7-1745409173307-rg</resourceGroup>
<appName>petstoreee7-1745409173307</appName>
...
</configuration>
</plugin>
</plugins>
</build>
デモ アプリの <appName>
と <resourceGroup>
、 petstoreee7-1745409173307
、 petstoreee7-1745409173307-rg
の値は、後で使用されます。
App Service の構成は、 pom.xml ファイル内で直接変更できます。
- 構成の完全な一覧については、「 共通構成」を参照してください。
- App Service に固有の構成については、「 Azure Web App: 構成の詳細」を参照してください。
アプリをデプロイする
pom.xml ファイル内のすべての構成の準備ができたら、次の 1 つのコマンドを使用して Java アプリを Azure にデプロイできます。
# Disable testing, as it requires Wildfly to be installed locally.
mvn package azure-webapp:deploy -DskipTests
使用可能なサブスクリプションの一覧から選択すると、Maven は Azure App Service にデプロイされます。 デプロイが完了すると、アプリケーションの準備が整います。
このデモ アプリの場合、URL は http://petstoreee7-1745409173307.azurewebsites.net
。 ローカル Web ブラウザーで URL を開くと、次のアプリが表示されます。
お疲れさまでした。 App Service に Java アプリをデプロイしました。
リソースをクリーンアップする
このチュートリアルのリソースは、Azure リソース グループに作成しました。 必要がなくなった場合は、Cloud Shell で次の Azure CLI コマンドを実行して、リソース グループとそのすべてのリソースを削除できます。
az group delete --name petstoreee7-1745409173307-rg --yes
コマンドの実行に時間がかかる場合があります。
関連コンテンツ
- チュートリアル: Azure App Service on Linux と MySQL を使用して Tomcat Web アプリを構築する
- チュートリアル: Azure App Service on Linux と Azure Cosmos DB を使用して Java Spring Boot Web アプリを構築する
- Azure App Service への継続的デプロイを構成する
- Azure App Service on Linux の価格
- Azure App Service でアプリの診断ログを有効にする
- Azure App Service でアプリをスケールアップする
- Azure for Java 開発者向けドキュメント
- Azure App Service で Java SE、Tomcat、または JBoss EAP アプリをデプロイして構成する
- チュートリアル: カスタム ドメインとマネージド証明書を使用してアプリをセキュリティで保護する