しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

Azure Web Apps に最新版の Java をインストールする Site Extension を作った

Web Apps には Java 7 と 8 がインストールされていますが、最近はあまりランタイムのアップデートが行われておらず、世界の No.1 ことぶちぞうさんが色々やってますが、どうも時間がかかりそうです。

[Java][Web Apps] Current Java runtime version include many security issues (vulnerability)

とりあえず、もうしばらくすればアップデートされるみたいですが、インストールされないのなら Site Extension で解決してしまえばいいじゃないという感じで対応してみました。

Heroku の Buildpack みたいに、標準以外のランタイムをサクッとインストールできる仕組みがあれば、みんな幸せになれそうですよね。

Java の Site Extension でめんどくさいのが、配布形式がインストーラーしか存在していないという点ですね。そのあたりは先人の知恵を借ります。

他にも何点かはまりましたが、何とか Site Extension 化出来たので、サクッと試しておきました。

デフォルトの Web Apps では Java 8 を選択すると 1.8.0_60 となります。

いつものように Azure Portal か Kudu から Site Extension のインストールを行います。Java で検索すると簡単に見つかると思うので、手順は省略しておきます。

インストールには 2,3 分かかるので、それまで待ちます。完了したら一度サイト自体を再起動し、ブラウザでアクセスしなおせば 1.8.0_74 で動作していることが確認できます。

Site Extension は ARM Template を使ってインストールが行えるので、最新版の Java がインストール済みの Web App を作成といった処理も簡単に用意できますね。