Azure Web Apps上でSpring Boot2.0のWebアプリケーションを動かしてみます。
Azure Web Appsとは
Microsoft Azure(以下Azure)のWebアプリケーション向けPaaSです。.NET/Node.js/PHP/Java/Pythonのアプリをサーバーの管理なしにホスティングすることができます。
デプロイの手順
IntelliJの環境のセットアップ
IntelliJ IDEAにはMicrosoft製のAzure向けプラグイン((Azure Toolkit for IntelliJ)https://plugins.jetbrains.com/plugin/8053-azure-toolkit-for-intellij)があるので、これを導入します。
プラグインを導入したら、メニューバーの「Tools」→「Azure」→「Azure Sign in」から Azureにサインインし、使用するSubscriptionを選択します。
Azure Web Appsへのデプロイ方法
Azure Web AppsでJavaのWebアプリケーションを動かすにはいくつか方法があります。
WAR形式でTomcatにデプロイする
HTTP/SFTP/FTPでWARファイルをアップロードして、Web Apps上のTomcatにデプロイする方法です。
Dockerにデプロイする
docker build
したイメージをWeb App for Containersにデプロイする方法です。
JAR形式で動かす
実行可能なJARファイルをデプロイし、Azure Appsの設定ファイルであるweb.config
上でコマンドを指定して実行する方法です。
Java on App Service on Linux
先日プレビュー版が公開された App Service on LinuxのJavaランタイムにデプロイする方法です。
ここでは、ローカルで実行するときとビルド形式を揃えたいという理由で、JARファイル形式のデプロイを試してみます。
Azure Web Appへのデプロイ
試してみると言いましたが、IntelliJからデプロイする場合は通常のSpring Bootの構成から特に変更するところはなく、コンテキストメニューの「Azure」→「Run On」からメニューに従っていけばデプロイ可能です。
なお、WARファイル形式のデプロイであっても、同様にメニューに従えばデプロイ可能です。
情報を集めるのに少し手間がかかった割に、デプロイの手順に掛ける手間が少ないので拍子抜け感があったのですが、IDEとの組み合わせでデプロイができるところはいいところだと思います。