跳至主要內容

將 Mastra 部署至 Cloudflare

使用 @mastra/deployer-cloudflare 將 Mastra 伺服器部署至 Cloudflare Workers。Deployer 會封裝程式碼,並產生符合 Cloudflare wrangler 設定wrangler.jsonc 檔案,不需要額外設定即可部署。

資訊

若你使用伺服器轉接器Web 框架,請依該框架平常的方式部署。

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

你需要一個 Mastra 應用程式和一個 Cloudflare 帳號。

警告

Cloudflare Workers 使用暫時性檔案系統,因此設定的任何儲存空間(包括可觀測性儲存空間)都必須託管於外部。若你使用的 LibSQLStore 採用檔案 URL,請改用遠端託管的資料庫。

安裝
「安裝」的直接連結

@mastra/deployer-cloudflare 套件加入專案:

npm install @mastra/deployer-cloudflare@latest

匯入 CloudflareDeployer,並在 Mastra 設定中將其設為 Deployer:

src/mastra/index.ts
import { Mastra } from '@mastra/core'
import { CloudflareDeployer } from '@mastra/deployer-cloudflare'

export const mastra = new Mastra({
deployer: new CloudflareDeployer({
name: 'your-project-name',
vars: {
NODE_ENV: 'production',
},
}),
})

若要在本機測試 Cloudflare Worker,也請安裝 wrangler CLI

npm install -D wrangler

使用方式
「使用方式」的直接連結

設定專案後,將專案推送至你選擇的遠端 Git Provider(例如 GitHub)。

  1. 將儲存庫連接至 Cloudflare。在「Workers & Pages」控制面板中選取 Create application,然後在下一步選擇 Git Provider。繼續完成設定流程,並選取要部署的儲存庫。

    備註

    請記得設定執行應用程式所需的環境變數(例如模型 Provider 的 API 金鑰)。你可以使用 npx wrangler secret bulk .env.env 檔案上傳密鑰。詳情請參閱密鑰

  2. 準備就緒後,按一下 Deploy 按鈕,等待第一次部署完成。

  3. 前往 https://<your-project-name>.<slug>.workers.dev/api/agents,試用剛部署的函式。你應會收到列出所有可用 Agent 的 JSON 回應。

    由於 Mastra 伺服器會在每個 API 端點前加上 /api,因此提出要求時必須將其加入 URL。

  4. 現在可以透過 HTTP 呼叫 Mastra 端點。

    備註

    將端點公開前,請先設定驗證