Mastra を Azure App Services にデプロイする
Mastra アプリケーションを Azure App Services にデプロイします。
このガイドでは、Mastra サーバーのデプロイについて説明します。Server Adapter または Web フレームワークを使用している場合は、そのフレームワークの通常の方法でデプロイしてください。
始める前に始める前にへの直接リンク
次のものが必要です。
- Mastra アプリケーション
- 有効なサブスクリプションを持つ Azure アカウント
- Mastra アプリケーションを含む GitHub リポジトリ
Azure App Services の一部の料金プランではファイルシステムが一時的なため、ローカルデータベースファイルはデプロイ間で失われます。LibSQLStore でローカルファイルを使用している場合は、代わりに Turso など、リモートの LibSQL 互換データベースを使用するよう設定してください。
新しい App Service を作成する新しい App Service を作成するへの直接リンク
ここでは、Mastra アプリケーションをホストする新しい Azure App Service を作成します。アプリケーションの実行に必要なインフラストラクチャと環境が設定されます。
Azure Portal にログインし、App Services に移動するか、上部の検索バーで検索します。Create を選択して新しい App Service を作成し、ドロップダウンから Web App を選択します。
App Service を設定します。
- Subscription:Azure サブスクリプションを選択
- Resource Group:新しいリソースグループを作成するか、既存のものを選択
- Instance name:アプリに一意の名前を入力(URL の一部になります)
- Publish:Code を選択
- Runtime stack:Node 22 LTS を選択
- Operating System:Linux を選択
- Region:ユーザーに近いリージョンを選択
- Linux Plan:選択したリージョンによってはプランを選べます。要件に合うものを選択してください。
- Review + Create を選択して検証が完了するまで待ち、Create を選択します。
新しいデプロイが開始されます。完了するまで待ち、次のステップのセクションで Go to resource を選択します。
GitHub デプロイを設定する前に、環境変数を設定します。左側のサイドバーで Settings > Environment variables に移動し、次のような必要な環境変数を追加します。
- モデル Provider の API キー(
OPENAI_API_KEYなど) - データベース接続文字列
- Mastra アプリケーションに必要なその他の設定値
Apply を選択して変更を保存します。
- モデル Provider の API キー(
GitHub からデプロイするGitHub からデプロイするへの直接リンク
ここでは Azure App Service を GitHub リポジトリに接続し、継続的デプロイを有効にします。これにより、リポジトリに変更をプッシュするたびに、Azure がアプリケーションを自動でビルドしてデプロイします。
左側のサイドバーで Deployment Center に移動し、ソースとして GitHub を選択します。Azure で GitHub の認証が済んでいない場合は、GitHub にサインインします。
この例では、Provider として GitHub Actions を使用します。Organization、リポジトリ、ブランチを選択します。
Azure が GitHub Workflow ファイルを生成し、続行前にプレビューできます。Save(ページ上部)を選択します。
Azure が Workflow を作成すると、GitHub Actions の実行が開始され、Workflow ファイルがブランチにマージされます。必要な変更がないと失敗するため、この最初の実行をキャンセルしてください。
警告Azure が生成するデフォルトの Workflow は Mastra アプリケーションでは失敗するため、変更が必要です。
ローカルリポジトリに最新の変更をプルし、生成された Workflow ファイル(
.github/workflows/main_<your-app-name>.yml)を変更します。"npm install, build, and test" という名前の Step を見つけ、次のように変更します。
- Step 名を "npm install and build" に変更する
- Mastra アプリケーションに適切なテストを設定していない場合は、デフォルトのテストスクリプトが失敗してデプロイを中断するため、run セクションから
npm testコマンドを削除します。動作するテストがある場合は、テストコマンドを残せます。
"Zip artifact for deployment" Step を見つけ、zip コマンドを次の内容に置き換えます。
run: (cd .mastra/output && zip ../../release.zip -r .)これで、デプロイパッケージには
.mastra/outputのビルド出力のみが含まれます。Workflow の変更をコミットしてプッシュします。Azure ダッシュボードの Deployment Center でビルドが自動的に開始されます。正常に完了するまでデプロイの進行状況を確認してください。
デプロイを確認するデプロイを確認するへの直接リンク
ビルドが成功したら、アプリケーションが起動するまで少し待ちます。Azure Portal の Overview タブに表示されるデフォルト URL から、デプロイ済みのアプリケーションにアクセスできます。アプリケーションは https://<your-app-name>.azurewebsites.net で利用できます。
Azure Portal から URL をコピーし、ブラウザーで https://<your-app-name>.azurewebsites.net/api/agents にアクセスします。Agent の一覧が JSON で表示されます。
これで、Mastra エンドポイントを HTTP 経由で呼び出せます。
エンドポイントを公開する前に、認証を設定してください。