クイック スタート:App Service on Linux で Java アプリを作成するQuickstart: Create a Java app in App Service on Linux

App Service on Linux は、Linux オペレーティング システムを使用する、高度にスケーラブルな自己適用型の Web ホスティング サービスを提供します。App Service on Linux provides a highly scalable, self-patching, web hosting service using the Linux operating system. このクイック スタートでは、Azure CLIAzure App Service 用の Maven プラグインと共に使用して Java Web アーカイブ (WAR) ファイルをデプロイする方法を示します。This quickstart shows how to use the Azure CLI with the Maven Plugin for Azure App Service to deploy a Java web archive (WAR) file.

注意

IntelliJ や Eclipse のような一般的な IDE を使っても同じことができます。The same thing can also be done using popular IDEs like IntelliJ and Eclipse. Azure Toolkit for IntelliJ のクイック スタートまたは Azure Toolkit for Eclipse のクイック スタートで類似するドキュメントを確認してください。Check out our similar documents at Azure Toolkit for IntelliJ Quickstart or Azure Toolkit for Eclipse Quickstart.

Azure で実行されるサンプル アプリ

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。If you don't have an Azure subscription, create a free account before you begin.

Azure Cloud Shell を開くOpen Azure Cloud Shell

Azure Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。Azure Cloud Shell is a free, interactive shell that you can use to run the steps in this article. Cloud Shell には一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。Common Azure tools are preinstalled and configured in Cloud Shell for you to use with your account. [コピー] を選択してコードをコピーし、Cloud Shell に貼り付け、Enter キーを押して実行します。Select Copy to copy the code, paste it in Cloud Shell, and then press Enter to run it. Cloud Shell は、次のようにいくつかの方法で開くことができます。There are a few ways to open Cloud Shell:

コード ブロックの右上隅にある [使ってみる] を選択します。Select Try It in the upper-right corner of a code block. Azure Cloud Shell の [使ってみる] の例
ブラウザーで Cloud Shell を開きます。Open Cloud Shell in your browser. Azure Cloud Shell の起動ボタンLaunch Azure Cloud Shell button
Azure Portal の右上隅にあるメニューの [Cloud Shell] ボタンを選択します。Select the Cloud Shell button on the menu in the upper-right corner of the Azure portal. Azure Portal の [Cloud Shell] ボタン

Java アプリを作成するCreate a Java app

Cloud Shell プロンプトで次の Maven コマンドを実行して、helloworld という名前の新しいアプリを作成します。Execute the following Maven command in the Cloud Shell prompt to create a new app named helloworld:

mvn archetype:generate -DgroupId=example.demo -DartifactId=helloworld -DarchetypeArtifactId=maven-archetype-webapp

Maven プラグインを構成するConfigure the Maven plugin

Maven からデプロイするには、Cloud Shell でコード エディターを使用して helloworld ディレクトリ内のプロジェクト pom.xml ファイルを開きます。To deploy from Maven, use the code editor in the Cloud Shell to open up the project pom.xml file in the helloworld directory.

code pom.xml

次に、pom.xml ファイルの <build> 要素内に次のプラグイン定義を追加します。Then add the following plugin definition inside the <build> element of the pom.xml file.

<plugins>
    <!--*************************************************-->
    <!-- Deploy to Tomcat in App Service Linux           -->
    <!--*************************************************-->
    <plugin>
        <groupId>com.microsoft.azure</groupId>
        <artifactId>azure-webapp-maven-plugin</artifactId>
        <version>1.5.4</version>
        <configuration>
            <!-- Specify v2 schema -->
            <schemaVersion>v2</schemaVersion>
            <!-- App information -->
            <subscriptionId>${SUBSCRIPTION_ID}</subscriptionId>
            <resourceGroup>${RESOURCEGROUP_NAME}</resourceGroup>
            <appName>${WEBAPP_NAME}</appName>
            <region>${REGION}</region>
   
            <!-- Java Runtime Stack for App on Linux-->
            <runtime>
                <os>linux</os>
                <javaVersion>jre8</javaVersion>
                <webContainer>tomcat 8.5</webContainer>
            </runtime> 
            <deployment>
                <resources>
                    <resource>
                        <directory>${project.basedir}/target</directory>
                        <includes>
                            <include>*.war</include>
                        </includes>
                    </resource>
                </resources>
            </deployment>
        </configuration>
    </plugin>
</plugins>

注意

この記事では、WAR ファイル内にパッケージ化された Java アプリのみを操作します。In this article we are only working with Java apps packaged in WAR files. このプラグインは、JAR Web アプリケーションもサポートしています。Java SE JAR ファイルを App Service on Linux にデプロイする方法に関するページにアクセスしてお試しください。The plugin also supports JAR web applications, visit Deploy a Java SE JAR file to App Service on Linux to try it out.

プラグイン構成で、次のプレースホルダーを更新します。Update the following placeholders in the plugin configuration:

プレースホルダーPlaceholder 説明Description
SUBSCRIPTION_ID アプリをデプロイするサブスクリプションの一意の ID。The unique ID of the subscription you want to deploy your app to. 既定のサブスクリプションの ID は、Cloud Shell または CLI から az account show コマンドを使用して調べることができます。Default subscription's ID can be found from the Cloud Shell or CLI using the az account show command. 使用可能なすべてのサブスクリプションを調べるには、az account list コマンドを使用します。For all the available subscriptions, use the az account list command.
RESOURCEGROUP_NAME その中にアプリを作成する新しいリソース グループの名前。Name for the new resource group in which to create your app. アプリのすべてのリソースを 1 つのグループ内に配置することで、それらを一緒に管理できます。By putting all the resources for an app in a group, you can manage them together. たとえば、リソース グループを削除すれば、そのアプリに関連付けられているすべてのリソースが削除されます。For example, deleting the resource group would delete all resources associated with the app. この値を一意の新しいリソース グループ名 (たとえば、TestResources) で更新します。Update this value with a unique new resource group name, for example, TestResources. このリソース グループ名を使用して、後のセクションですべての Azure リソースをクリーンアップします。You will use this resource group name to clean up all Azure resources in a later section.
WEBAPP_NAME Azure にデプロイされると、このアプリ名はアプリのホスト名の一部になります (WEBAPP_NAME.azurewebsites.net)。The app name will be part the host name for the app when deployed to Azure (WEBAPP_NAME.azurewebsites.net). この値を、Java アプリをホストする新しい App Service アプリの一意の名前 (たとえば、contoso) で更新します。Update this value with a unique name for the new App Service app, which will host your Java app, for example contoso.
REGION アプリがホストされている Azure リージョン (たとえば、westus2)。An Azure region where the app is hosted, for example westus2. リージョンの一覧は、az account list-locations コマンドを使用して Cloud Shell または CLI から取得できます。You can get a list of regions from the Cloud Shell or CLI using the az account list-locations command.

アプリケーションのデプロイDeploy the app

次のコマンドを使用して、Java アプリを Azure にデプロイします。Deploy your Java app to Azure using the following command:

mvn package azure-webapp:deploy

デプロイが完了したら、Web ブラウザーで次の URL を使用して、デプロイされたアプリケーションを参照します (たとえば、http://<webapp>.azurewebsites.net)。Once deployment has completed, browse to the deployed application using the following URL in your web browser, for example http://<webapp>.azurewebsites.net.

Azure で実行されるサンプル アプリ

お疲れさまでした。Congratulations! App Service on Linux に初めての Java アプリをデプロイしました。You've deployed your first Java app to App Service on Linux.

リソースのクリーンアップClean up resources

前の手順では、リソース グループ内に Azure リソースを作成しました。In the preceding steps, you created Azure resources in a resource group. これらのリソースが将来必要になると想定していない場合、Cloud Shell で次のコマンドを実行して、リソース グループを削除します。If you don't expect to need these resources in the future, delete the resource group by running the following command in the Cloud Shell:

az group delete --name myResourceGroup

このコマンドの実行には、少し時間がかかる場合があります。This command may take a minute to run.

次の手順Next steps