CloudflareDeployer
CloudflareDeployer
クラスは、スタンドアロンのMastraアプリケーションをCloudflare Workersにデプロイすることを処理します。設定とデプロイメントを管理し、Cloudflare固有の機能でベースのDeployerクラスを拡張します。
使用例
src/mastra/index.ts
import { Mastra } from "@mastra/core/mastra";
import { CloudflareDeployer } from "@mastra/deployer-cloudflare";
export const mastra = new Mastra({
// ...
deployer: new CloudflareDeployer({
projectName: "hello-mastra",
routes: [
{
pattern: "example.com/*",
zone_name: "example.com",
custom_domain: true
}
],
workerNamespace: "my-namespace",
env: {
NODE_ENV: "production",
API_KEY: "<api-key>"
},
d1Databases: [
{
binding: "DB",
database_name: "my-database",
database_id: "d1-database-id",
preview_database_id: "your-preview-database-id"
}
],
kvNamespaces: [
{
binding: "CACHE",
id: "kv-namespace-id"
}
]
});
パラメーター
projectName?:
string
= 'mastra'
ワーカー プロジェクトの名前。
routes?:
CFRoute[]
ワーカーのルート設定の配列。各ルートには次が必要です: pattern (string)、zone_name (string)、custom_domain (boolean、任意)。
workerNamespace?:
string
ワーカーの名前空間。
env?:
Record<string, any>
ワーカー設定に含める環境変数。
d1Databases?:
D1DatabaseBinding[]
D1 データベース バインディングの配列。各バインディングには次が必要です: binding (string)、database_name (string)、database_id (string)、preview_database_id (string、任意)。
kvNamespaces?:
KVNamespaceBinding[]
KV 名前空間バインディングの配列。各バインディングには次が必要です: binding (string)、id (string)。