通过登录、运行 CLI 部署流程并查看 npx rayfin up 为你的应用配置了什么,将 Fabric 应用部署到 Fabric 中。 本文介绍部署期间发生的情况的概念。
先决条件
- 具有
rayfin/rayfin.yml配置文件的 Fabric Apps 项目。 如果还没有项目,请参阅 创建第一个 Fabric Apps 项目。 - 具有访问 Fabric 工作区权限的 Microsoft Entra ID 帐户。
部署应用程序
从项目根目录运行以下命令:
npx rayfin up
如果未登录,CLI 会自动启动交互式登录流。
部署的作用
该 rayfin up 命令按顺序执行以下步骤:
- 在Fabric工作区中创建Fabric应用项(或在后续部署时重复使用现有应用项)。
- 从远程服务检索可发布密钥。
- 将运行时设置从你
rayfin.yml同步到远程服务,包括身份验证配置和服务标志。 - 应用从 TypeScript 数据模型修饰器生成的数据库架构。
- 如果在
rayfin.yml中启用了staticHosting,则会构建并部署静态内容:运行构建命令,将输出文件夹打包为 ZIP 压缩包,然后上传。 - 将部署详细信息保存到
rayfin.yml和.env.fabric-*文件中,供后续部署使用。
部署后,CLI 将打印:
- 应用所在的托管 URL
- 用于管理部署的 Fabric 门户链接
- 用于参考的部署 ID
配置身份验证
部署的应用程序仅支持 Fabric 中转身份验证 (Entra SSO)。 电子邮件和密码身份验证在本地开发期间可用,但在部署到Fabric后不起作用。
在运行 rayfin.yml 之前,请确保 rayfin up 已启用Fabric身份验证:
services:
auth:
enabled: true
fabric:
enabled: true
预览部署,无需更改
使用 --dry-run 查看 CLI 在不创建或修改任何资源的情况下会执行哪些操作:
npx rayfin up --dry-run
应用数据库更改
更新数据模型后,将架构更改推送到远程数据库,而无需重新部署完整堆栈:
npx rayfin up db apply
如果架构更改涉及潜在的破坏性操作(删除列、重命名表),CLI 会警告你,并拒绝继续。 使用 --force 跳过安全检查:
npx rayfin up db apply --force
Caution
使用 --force 可能会导致数据丢失。 仔细查看列出的操作,并确认在继续操作之前接受后果。
重新部署静态内容
仅更改前端代码时,请独立重新部署静态内容,以加快迭代周期:
npx rayfin up staticapp deploy
此命令运行配置的 buildCommand、打包输出并将其上传到远程服务。
跳过生成步骤并部署现有输出:
npx rayfin up staticapp deploy --skip-build
检查部署状态
查看Fabric部署的当前状态:
npx rayfin up status
为计算机可读输出添加 --json :
npx rayfin up status --json
更新现有部署
第一次部署后,rayfin.yml存储部署详细信息(rayfinItemIdfabricWorkspaceId以及项终结点)。 再次运行 npx rayfin up 会更新相同的部署,而不是创建新的部署。
对于目标更新,请使用子命令:
| 命令 | 它更新的内容 |
|---|---|
npx rayfin up |
所有内容:设置、数据库和静态内容。 |
npx rayfin up db apply |
仅限数据库架构。 |
npx rayfin up staticapp deploy |
仅静态内容。 |
排查部署问题
部署失败,出现 401 或 403 错误
会话可能已过期。 运行 npx rayfin login 以重新进行身份验证,然后重试 npx rayfin up。
数据库应用报告了破坏性更改
Rayfin CLI 会阻止可能导致数据丢失的架构更改。 查看列出的操作,仅在确认你接受数据丢失后才使用 npx rayfin up db apply --force 。
静态部署超出大小限制
压缩存档不得超过 100 MB。 通过排除源映射和大型开发资产来优化生成输出,或者将二进制文件移动到Fabric应用存储。
在 Fabric 门户中管理应用
部署后,可以直接在 Fabric 门户中管理Fabric应用。
查看项属性
在Fabric门户中打开Fabric应用以查看:
- 应用 URL — 托管静态内容的公共 URL。
- 应用后端 URL - 所有后端服务的基 URL。
管理子服务
选择 Fabric 应用即可查看其子服务:
-
SQL 数据库 - 打开Fabric SQL 查询编辑器。 您可以对您的数据执行读取查询。 直接在 Fabric 门户中所做的架构更改将在下一次
rayfin up部署时被覆盖。 - 身份验证 - 在子 SQL 数据库中的 “用户” 表中查看和管理经过身份验证的用户。
应用权限
对于 Fabric 应用的任何参与者,若要部署 Fabric 应用,他们至少需要对该项具有 Edit 权限。