Azure 应用服务
🌐 Azure App Services
将你的 Mastra 应用部署到 Azure 应用服务。
🌐 Deploy your Mastra applications to Azure App Services.
本指南假设你的 Mastra 应用是使用默认的 npx create-mastra@latest 命令创建的。有关如何创建新的 Mastra 应用的更多信息,请参阅我们的入门指南
Azure 应用服务在某些定价层使用临时文件系统。请从你的 Mastra 配置中移除任何使用带有文件 URL 的 LibSQLStore 的内容。请使用内存存储(:memory:)或外部存储提供商,如 Turso、PostgreSQL 或 Upstash。
先决条件Direct link to 先决条件
🌐 Prerequisites
部署步骤Direct link to 部署步骤
🌐 Deployment Steps
创建新的应用服务:
🌐 Create a new App service:
配置应用服务设置:
🌐 Configure app service settings:
- 订阅:选择你的 Azure 订阅
- 资源组:创建一个新的资源组或选择一个已有的资源组
- 实例名称:为你的应用输入一个唯一名称(这将成为你 URL 的一部分)
- 发布:选择 代码
- 运行时堆栈:选择 Node 22 LTS
- 操作系统:选择 Linux
- 区域:选择靠近用户的区域
- Linux 计划:你可以根据所选地区选择计划,根据你的需求选择合适的计划。
- 点击 审核 + 创建
- 等待验证完成,然后点击 创建
等待部署:
🌐 Wait for deployment:
- 等待部署完成
- 完成后,点击下一步部分下的 前往资源
在设置部署之前,先配置你的环境变量:
🌐 Before setting up deployment, configure your environment variables:
- 在左侧边栏中导航到 设置 > 环境变量
- 添加所需的环境变量,例如:
- 模型提供商 API 密钥(例如,
OPENAI_API_KEY) - 数据库连接字符串
- 你的 Mastra 应用需要的任何其他配置值
- 模型提供商 API 密钥(例如,
- 点击 应用 保存更改
设置 GitHub 部署:
🌐 Setup GitHub deployment:
- 在左侧边栏中导航到 部署中心
- 选择 GitHub 作为你的来源
- 如果你尚未通过 Azure 进行身份验证,请登录 GitHub
- 在这个例子中,我们将保留 GitHub Actions 作为我们的提供商
- 选择你的组织、仓库和分支
- Azure 将生成一个 GitHub 工作流文件,你可以在继续之前预览它
- 点击 保存(保存按钮位于页面顶部)
在 Azure 创建工作流后,它会触发一次 GitHub Actions 运行,并将工作流文件合并到你的分支中。请取消此次初始运行,因为如果没有必要的修改,它将会失败。
🌐 After Azure creates the workflow, it will trigger a GitHub Actions run and merge the workflow file into your branch. Cancel this initial run as it will fail without the necessary modifications.
warningAzure生成的默认工作流对于Mastra应用将会失败,需要进行修改。
将最新的更改拉取到本地仓库,并修改生成的工作流文件(
.github/workflows/main_<your-app-name>.yml):-
更新构建步骤:找到名为“npm 安装、构建和测试”的步骤,然后:
- 将步骤名称更改为“npm install and build”
- 如果你还没有在 Mastra 应用中设置适当的测试,请从运行部分移除
npm test命令,因为默认的测试脚本会失败并干扰部署。如果你有可用的测试,可以保留测试命令。
-
更新压缩文件步骤:找到“用于部署的压缩文件”步骤,并将 zip 命令替换为:
run: (cd .mastra/output && zip ../../release.zip -r .)这确保了只有来自
.mastra/output的构建输出会被包含在部署包中。
-
部署你的更改:
🌐 Deploy your changes:
- 提交并推送你的工作流修改
- 构建将在你 Azure 仪表板的 部署中心 中自动触发
- 监控部署进度,直到成功完成
访问已部署的应用:
🌐 Access your deployed application:
- 构建成功后,稍等片刻以让应用启动
- 使用 Azure 门户 概览 选项卡中提供的默认 URL 访问已部署的应用
- 你的应用将可以在
https://<your-app-name>.azurewebsites.net上使用
连接到你的Mastra服务器Direct link to 连接到你的Mastra服务器
🌐 Connect to your Mastra server
现在,你可以使用 @mastra/client-js 包中的 MastraClient 从客户端应用连接到 Mastra 服务器。
🌐 You can now connect to your Mastra server from your client application using a MastraClient from the @mastra/client-js package.
有关更多信息,请参阅 MastraClient 文档。
🌐 Refer to the MastraClient documentation for more information.
import { MastraClient } from "@mastra/client-js";
const mastraClient = new MastraClient({
baseUrl: "https://<your-app-name>.azurewebsites.net",
});
下一步Direct link to 下一步
🌐 Next steps