メインコンテンツへ移動

Mastra を Azure App Services にデプロイする

Mastra アプリケーションを Azure App Services にデプロイします。

情報

このガイドでは、Mastra サーバーのデプロイについて説明します。Server Adapter または Web フレームワークを使用している場合は、そのフレームワークの通常の方法でデプロイしてください。

始める前に
始める前にへの直接リンク

次のものが必要です。

警告

Azure App Services の一部の料金プランではファイルシステムが一時的なため、ローカルデータベースファイルはデプロイ間で失われます。LibSQLStore でローカルファイルを使用している場合は、代わりに Turso など、リモートの LibSQL 互換データベースを使用するよう設定してください。

新しい App Service を作成する
新しい App Service を作成するへの直接リンク

ここでは、Mastra アプリケーションをホストする新しい Azure App Service を作成します。アプリケーションの実行に必要なインフラストラクチャと環境が設定されます。

  1. Azure Portal にログインし、App Services に移動するか、上部の検索バーで検索します。Create を選択して新しい App Service を作成し、ドロップダウンから Web App を選択します。

  2. App Service を設定します。

    • Subscription:Azure サブスクリプションを選択
    • Resource Group:新しいリソースグループを作成するか、既存のものを選択
    • Instance name:アプリに一意の名前を入力(URL の一部になります)
    • PublishCode を選択
    • Runtime stackNode 22 LTS を選択
    • Operating SystemLinux を選択
    • Region:ユーザーに近いリージョンを選択
    • Linux Plan:選択したリージョンによってはプランを選べます。要件に合うものを選択してください。
    • Review + Create を選択して検証が完了するまで待ち、Create を選択します。
  3. 新しいデプロイが開始されます。完了するまで待ち、次のステップのセクションで Go to resource を選択します。

  4. GitHub デプロイを設定する前に、環境変数を設定します。左側のサイドバーで Settings > Environment variables に移動し、次のような必要な環境変数を追加します。

    • モデル Provider の API キー(OPENAI_API_KEY など)
    • データベース接続文字列
    • Mastra アプリケーションに必要なその他の設定値

    Apply を選択して変更を保存します。

GitHub からデプロイする
GitHub からデプロイするへの直接リンク

ここでは Azure App Service を GitHub リポジトリに接続し、継続的デプロイを有効にします。これにより、リポジトリに変更をプッシュするたびに、Azure がアプリケーションを自動でビルドしてデプロイします。

  1. 左側のサイドバーで Deployment Center に移動し、ソースとして GitHub を選択します。Azure で GitHub の認証が済んでいない場合は、GitHub にサインインします。

    この例では、Provider として GitHub Actions を使用します。Organization、リポジトリ、ブランチを選択します。

    Azure が GitHub Workflow ファイルを生成し、続行前にプレビューできます。Save(ページ上部)を選択します。

  2. Azure が Workflow を作成すると、GitHub Actions の実行が開始され、Workflow ファイルがブランチにマージされます。必要な変更がないと失敗するため、この最初の実行をキャンセルしてください

    警告

    Azure が生成するデフォルトの Workflow は Mastra アプリケーションでは失敗するため、変更が必要です。

    ローカルリポジトリに最新の変更をプルし、生成された Workflow ファイル(.github/workflows/main_<your-app-name>.yml)を変更します。

  3. "npm install, build, and test" という名前の Step を見つけ、次のように変更します。

    • Step 名を "npm install and build" に変更する
    • Mastra アプリケーションに適切なテストを設定していない場合は、デフォルトのテストスクリプトが失敗してデプロイを中断するため、run セクションから npm test コマンドを削除します。動作するテストがある場合は、テストコマンドを残せます。
  4. "Zip artifact for deployment" Step を見つけ、zip コマンドを次の内容に置き換えます。

    run: (cd .mastra/output && zip ../../release.zip -r .)

    これで、デプロイパッケージには .mastra/output のビルド出力のみが含まれます。

  5. 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 経由で呼び出せます。

警告

エンドポイントを公開する前に、認証を設定してください。

次のステップ
次のステップへの直接リンク