跳至主要內容

將 Mastra 部署至 Azure App Services

將你的 Mastra 應用程式部署至 Azure App Services。

資訊

本指南涵蓋如何部署 Mastra 伺服器。如果你使用伺服器 adapter網絡框架,請按照該框架的一般方式部署。

開始之前
開始之前 的直接連結

你需要:

注意

在 Azure App Services 上,部分定價層級的檔案系統是暫存的,因此任何本機資料庫檔案都會在兩次部署之間遺失。如果你透過本機檔案使用 LibSQLStore,請改為設定使用遠端、與 LibSQL 相容的資料庫(例如 Turso)。

建立新的 App Service
建立新的 App Service 的直接連結

以下步驟會說明如何建立新的 Azure App Service,以託管你的 Mastra 應用程式。這會設定應用程式運行所需的基礎架構和環境。

  1. 登入 Azure Portal,前往 App Services,或在頂部搜尋列中搜尋。選擇 建立 以建立新的 App Service,然後在下拉式選單中選擇 Web App

  2. 設定 App Service:

    • 訂閱:選擇你的 Azure 訂閱
    • 資源群組:建立新的資源群組或選擇現有群組
    • 執行個體名稱:為應用程式輸入獨一無二的名稱(它會成為 URL 的一部分)
    • 發佈:選擇 程式碼
    • Runtime stack:選擇 Node 22 LTS
    • 作業系統:選擇 Linux
    • 區域:選擇鄰近使用者的區域
    • Linux 計劃:視乎所選區域,你或可選擇計劃;請選取適合需要的計劃。
    • 選擇 檢閱 + 建立,等待驗證完成,然後選擇 建立
  3. 系統已觸發新部署。等待部署完成,然後在後續步驟部分選擇 前往資源

  4. 設定 GitHub 部署之前,請先設定環境變數。在左側邊欄中前往 設定 > 環境變數。加入所需的環境變數,例如:

    • 模型 Provider API 金鑰(例如 OPENAI_API_KEY
    • 資料庫連線字串
    • Mastra 應用程式所需的任何其他設定值

    選擇 套用 以儲存變更。

GitHub 部署
GitHub 部署 的直接連結

以下步驟會將 Azure App Service 連接至 GitHub repository,以啟用持續部署。此後,每當你將變更推送至 repository,Azure 都會自動建置並部署應用程式。

  1. 在左側邊欄中前往 部署中心,然後選擇 GitHub 作為來源。如果尚未透過 Azure 驗證 GitHub,請登入 GitHub。

    在此範例中,你會保留 GitHub Actions 作為 Provider。選擇你的組織、repository 和 branch。

    Azure 會產生 GitHub workflow 檔案,你可以在繼續之前預覽。選擇 儲存(儲存按鈕位於頁面頂部)。

  2. Azure 建立 workflow 後,會觸發 GitHub Actions 運行,並將 workflow 檔案合併至你的 branch。由於缺少必要修改,這次運行會失敗,請取消首次運行

    注意

    Azure 產生的預設 workflow 不適用於 Mastra 應用程式,必須修改。

    將最新變更拉取至本機 repository,然後修改產生的 workflow 檔案(.github/workflows/main_<your-app-name>.yml):

  3. 找出名為「npm install, build, and test」的步驟,然後:

    • 將步驟名稱改為「npm install and build」
    • 如果尚未在 Mastra 應用程式中設定適當測試,請從 run 部分移除 npm test 命令,因為預設測試 script 會失敗並中斷部署。如果已有可正常運行的測試,可以保留測試命令。
  4. 找出「Zip artifact for deployment」步驟,並將 zip 命令替換為:

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

    此後,部署套件只會包含 .mastra/output 的建置輸出。

  5. commit 並推送 workflow 修改。Azure dashboard 的 部署中心 會自動觸發建置。監察部署進度,直至順利完成。

驗證部署
驗證部署 的直接連結

建置成功後,稍候片刻讓應用程式啟動。你可以使用 Azure Portal 概覽 分頁提供的預設 URL 存取已部署的應用程式。應用程式可於 https://<your-app-name>.azurewebsites.net 存取。

從 Azure Portal 複製 URL,然後在瀏覽器前往 https://<your-app-name>.azurewebsites.net/api/agents。你應會看到 Agent 的 JSON 清單。

現在你可以透過 HTTP 調用 Mastra endpoint。

注意

公開 endpoint 前,請先設定驗證

後續步驟
後續步驟 的直接連結