将 Mastra 部署到 Amazon EC2
将 Mastra Server 部署到 Amazon EC2。Server 在你管理的基础设施上运行,可支持长时运行的 Agent 和 Workflow。
信息
本指南介绍如何部署 Mastra Server。如果你使用的是 Server 适配器或 Web 框架,请按该框架的常规方式进行部署。
开始之前开始之前的直接链接
你需要:
用于生产环境时,你还需要:
部署部署的直接链接
连接到 EC2 实例并克隆仓库:
- 公共仓库
- 私有仓库
git clone https://github.com/<your-username>/<your-repository>.gitgit clone git@github.com:<your-username>/<your-repository>.git进入仓库目录:
cd "<your-repository>"安装依赖:
- npm
- pnpm
- Yarn
- Bun
npm installpnpm installyarn installbun install创建
.env文件并添加环境变量:touch .env请设置运行应用所需的环境变量(例如模型 Provider API Key):
OPENAI_API_KEY=<your-openai-api-key># Add other required environment variables构建应用:
- npm
- pnpm
- Yarn
- Bun
npm run buildpnpm run buildyarn buildbun run build运行应用:
node --env-file=".env" .mastra/output/index.mjs这是一个基础示例。在生产环境中,请使用 PM2 或 systemd 等进程管理器,让应用持续运行并处理重启。
注意在公开暴露端点之前,请设置身份验证。
Mastra Server 现在已在 4111 端口上运行,但只能从本地访问。
你可以在 EC2 安全组中开放 4111 端口以直接访问,也可以配置反向代理(例如 nginx)监听 80 和 443 端口,并将请求转发到
http://localhost:4111。在生产环境中,应使用反向代理以便配置 HTTPS。HTTPS 会加密流量,也是大多数 Webhook 集成以及 Agent 所交互外部服务的必要条件。
访问
https://<your-ec2-address>/api/agents验证部署;该端点应返回 Agent 的 JSON 列表。现在可以通过 HTTP 调用 Mastra 端点。