Azure App Service で Spring Boot 製 Web アプリケーションの Blue-Green Deployment を行う

Azure App Service で Spring Boot 製 Web アプリケーションを動かすことに成功した。

tnakamura.hatenablog.com

ただし、このままだと新しいバージョンをデプロイするときにサービスを停止しないといけない。実行中に App Service Editor で jar ファイルを更新しようとしたが、ステータスコード 409 のエラーになった。停止すれば更新できた。

開発中でも毎回サービスを停止してデプロイするのは手間だし、万が一動かなかったときはツライ。ステージング環境にデプロイして動作確認してから、本番環境と入れ替えたいので、Blue-Green Deployment をやることにした。

デプロイメントスロットを作成

名前は staging にしておく。 一から設定したくないので、既存の環境をコピーする。

staging にデプロイ

作戦した staging デプロイメントスロットでも App Service Editor は使える。 jar ファイルと web.config を wwwroot 直下にアップロードし、staging を再起動する。

あとは、staging で動作確認したら、スワップを実行して本番環境と入れ替えればいい。