跳到主要内容
非官方简体中文翻译,内容版权归 Mastra 所有,遵循 Apache-2.0 许可。

配置

当你部署到 Mastra platform 时,CLI 会生成 .mastra-project.json 配置文件,并从平台以及(可选的)本地 .env 文件解析环境变量。

本页解释这两种机制。

项目配置
项目配置的直接链接

.mastra-project.json 文件在你首次运行 mastra deploy 时自动生成。它将你的本地项目关联到平台项目。GitHub 集成会将相同的文件写入已关联的仓库。

请将其提交到版本控制,以便后续部署(包括来自 CI 的部署)指向正确的项目。

你的文件大致如下:

.mastra-project.json
{
"projectId": "06daaac4-89b1-40f0-9e3f-0993e039a627",
"projectName": "my-project",
"organizationId": "org_01KNA5YSP52SX4M6YVSXC2MAHP"
}
字段描述
projectId项目的 UUID。在创建项目时分配。
projectName人类可读的项目名称。用作仪表板和 CLI 输出中的显示标签。
organizationId拥有该项目的组织。所有部署、API 密钥和资源都限定在此组织内。

环境变量
环境变量的直接链接

本地 env 文件是可选的。mastra deploy 从三个来源解析变量:

  • 托管变量:由 托管数据库等平台资源注入。平台定义这些变量,你无法编辑。
  • 存储变量:通过仪表板保存在项目或环境中。每次部署按原样使用,无需本地文件。
  • 本地 env 文件:部署时会在其上叠加一个本地 env 文件:你传入的 --env-file、使用 --env 部署时的 .env.<environment>,或项目中唯一的 .env* 文件。如果存在多个,CLI 会要求你选择一个。不同本地文件中的变量不会合并。

要固定部署使用特定的 env 文件而不是依赖默认选择,请传入 --env-file:

mastra deploy --env-file .env.production --yes

在部署前检查并清理本地 env 文件,以避免上传仅用于开发或个人机密的密钥。

Observability
Observability的直接链接

以下环境变量在 Mastra platform 上配置 Observability 产品。

变量描述
MASTRA_PLATFORM_ACCESS_TOKEN组织作用域的访问 token。CLI 在配置 observability 时写入此变量,并将其用于平台认证。
MASTRA_PROJECT_ID平台项目的 UUID。MastraPlatformExporter 使用它将可观测性数据关联到平台项目。Studio 和 Server 部署从 .mastra-project.json 读取项目 ID。
MASTRA_PLATFORM_OBSERVABILITY_ENDPOINTMastraPlatformExporter 和 Studio 的可选 observability 端点覆盖。当你的项目不在默认美国区域时,将其设置为你所在区域的 collector,例如 https://observability.eu.mastra.ai。默认为 https://observability.mastra.ai。
MASTRA_ORG_ID覆盖 CLI 命令的活动组织。你也可以在受支持的命令上使用 --org 标志设置。

MastraPlatformExporter 读取 MASTRA_PLATFORM_ACCESS_TOKEN 以认证平台导出。

多个环境
多个环境的直接链接

单个项目可以在多个环境(例如 production 和 staging)中运行相同的代码库。每个环境都有自己的 URL、自己的存储变量以及自己的部署历史。一个 .mastra-project.json 文件即可覆盖所有环境:

mastra deploy --env production --yes
mastra deploy --env staging --env-file .env.staging --yes
备注

早期平台版本要求每个环境一个项目。Environments 取代了该模式,因此请保留一个项目并部署到不同环境。

On this page