Azure Web App に React アプリケーションをデプロイした際、Web App デフォルトページが表示され、デプロイしたはず (つもりになっている) Web アプリケーションが反映されないという事象に遭遇 (2回目)。忘れた頃に、毎回 Azure Web App のスタートアップコマンドってどうやって設定するんだっけ?という状態に陥るので、手順をまとめておきたいと思います。(備忘録)
Azure App Service は MCR (Microsoft Container Registry) からコンテナイメージを pull して、コンテナ上でアプリケーションコードを実行できる PaaS です。一般的な Node.js ファイルが検出された場合は、自動的にプロセスマネージャーの PM2 (Azure Web App Node.js コンテナ付属) を使用して、アプリケーションを起動します。但し、Azure Web App ランタイムの Node 14 LTS
を使用している場合には、コンテナは PM2 でアプリケーションを自動的に起動する処理は行われないようです。

そこで設定が必要になるのが、スタートアップコマンドです。Azure Web App のスタートアップコマンドは、コンテナウォームアップの一環として実行されます。スタートアップコマンドは、Azure Portal 上から設定することが可能です。
対象の Azure Web App リソースへアクセスして、ナビゲーションメニューから 設定 > 構成 > 全般設定 タブを開きます。
スタートアップコマンドの項目があるので、コマンドを入力します。
pm2 start <.js-file-or-PM2-file> --no-daemon
詳しい内容は公式ドキュメントをご確認ください。