次の方法で共有


クイック スタート: Azure App Service で Java アプリを作成する

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 を使用するには:

    1. 次の [Cloud Shell の起動 ] ボタンを選択するか、 https://shell.azure.com に移動してブラウザーで Cloud Shell を開きます。

    2. 必要に応じて Azure にサインインし、Cloud Shell の Bash 環境にいることを確認します。

    3. コード ブロックで [コピー] を選択し、コードを 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
  1. [ 新しい実行構成の作成] に「 Y 」と入力し、 Enter キーを押します。
  2. [OS の値の定義] にLinux の場合は 2」と入力し、Enter キーを押します。
  3. [JavaVersion の値の定義] に「Java 21 の 1」と入力し、Enter キーを押します。
  4. WebContainer の値を定義するには、Tomcat 10.1 に「1」と入力し、Enter キーを押します。
  5. PricingTier の値の定義に「3」と入力して P1V2 を選択し、Enter キーを押します。
  6. [ 確認] に「 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-1745408005556helloworld-1745408005556-rg の値は、後で使用されます。

App Service の構成は、 pom.xml ファイル内で直接変更できます。

アプリをデプロイする

pom.xml ファイル内のすべての構成の準備ができたら、次の 1 つのコマンドを使用して Java アプリを Azure にデプロイできます。

mvn package azure-webapp:deploy

使用可能なサブスクリプションの一覧から選択すると、Maven は Azure App Service にデプロイされます。 デプロイが完了すると、アプリケーションの準備が整います。

このデモでは、URL は http://helloworld-1745408005556.azurewebsites.net。 ローカル Web ブラウザーで URL を開くと、次のアプリが表示されます。

Azure App Service で実行されている Maven Hello World Web アプリのスクリーンショット。

お疲れさまでした。 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 を使用するには:

    1. 次の [Cloud Shell の起動 ] ボタンを選択するか、 https://shell.azure.com に移動してブラウザーで Cloud Shell を開きます。

    2. 必要に応じて Azure にサインインし、Cloud Shell の Bash 環境にいることを確認します。

    3. コード ブロックで [コピー] を選択し、コードを 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
  1. [ 新しい実行構成の作成] に「 Y 」と入力し、 Enter キーを押します。
  2. [OS の値の定義] にLinux の場合は 2」と入力し、Enter キーを押します。
  3. [JavaVersion の値の定義] に「Java 21 の 1」と入力し、Enter キーを押します。
  4. PricingTier の値を定義するには 3 を入力して「P1v2」とし、Enter キーを押します。
  5. [ 確認] に「 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 ファイル内で直接変更できます。

アプリをデプロイする

pom.xml ファイル内のすべての構成の準備ができたら、Java アプリを Azure にデプロイできます。

  1. 次のコマンドを使用して JAR ファイルをビルドします。

     mvn clean package
    

    ヒント

    Spring Boot では、 mvn packageを含む 2 つの JAR ファイルが生成されますが、 azure-webapp-maven-plugin は自動的にデプロイする適切な JAR ファイルを選択します。

  2. 次のコマンドを使用して、アプリを 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] ------------------------------------------------------------------------
    
  3. Azure portal の [概要 ] ページからアプリの既定のドメインを開き、URL に /greeting を追加します。 次のアプリが表示されます。

    Azure App Service で実行されている Spring Boot Hello World Web アプリのスクリーンショット。

お疲れさまでした。 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 を使用するには:

    1. 次の [Cloud Shell の起動 ] ボタンを選択するか、 https://shell.azure.com に移動してブラウザーで Cloud Shell を開きます。

    2. 必要に応じて Azure にサインインし、Cloud Shell の Bash 環境にいることを確認します。

    3. コード ブロックで [コピー] を選択し、コードを Cloud Shell に貼り付けて実行します。

Java アプリを作成する

  1. Pet Store デモ アプリケーションを複製します。

    git clone https://github.com/Azure-Samples/app-service-java-quickstart
    
  2. 完成した 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
  1. [ 新しい実行構成の作成] に「 Y 」と入力し、 Enter キーを押します。
  2. [OS の値の定義] にLinux の場合は 2」と入力し、Enter キーを押します。
  3. [JavaVersion の値の定義] に「Java 17 の 2」と入力し、Enter キーを押します。 Java 21 を選択した場合、 後で Jbosseap がオプションとして表示されません。
  4. [WebContainer の値の定義] に「Jbosseap 7」に「4」と入力し、Enter キーを押します。
  5. [ PricingTier の値の定義] に「 P1v3 」に「1」と入力し、 Enter キーを押します。
  6. [ 確認] に「 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-1745409173307petstoreee7-1745409173307-rg の値は、後で使用されます。

App Service の構成は、 pom.xml ファイル内で直接変更できます。

アプリをデプロイする

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 を開くと、次のアプリが表示されます。

Azure App Service で実行されている Maven Hello World Web アプリのスクリーンショット。

お疲れさまでした。 App Service に Java アプリをデプロイしました。

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

このチュートリアルのリソースは、Azure リソース グループに作成しました。 必要がなくなった場合は、Cloud Shell で次の Azure CLI コマンドを実行して、リソース グループとそのすべてのリソースを削除できます。

az group delete --name petstoreee7-1745409173307-rg  --yes

コマンドの実行に時間がかかる場合があります。