使用 TinaCloud 进行生产部署

更喜欢观看视频?

要将您的站点部署到生产环境,您需要将 TinaCMS 连接到托管的后端。本文件将引导您完成从本地运行到生产运行的步骤。

前提条件

  • 确保您的站点在 GitHub 上,并且所有更改都已推送(包括 tina/tina-lock.json)。此文件是通过在本地运行 tinacms dev 生成的——它必须被提交并推送,以便 TinaCloud 索引您的内容。
  • 确保您有一个 TinaCloud 账户。

创建一个 TinaCloud 项目

前往 app.tina.io 并创建一个新的项目。系统会要求您连接您的 GitHub 账户并选择要连接到 TinaCloud 的存储库。

运行后端初始化命令

下一步是连接您的站点。一旦连接,您的项目编辑者将能够直接从站点内将内容保存到其 GitHub 存储库。

这将会:

  • 要求您提供 ClientId:可以在项目的“概述”选项卡中找到。
  • 要求您提供只读令牌:可以在项目的“令牌”选项卡中找到。
  • 用连接到 TinaCloud 所需的环境变量填充您的 .env 文件。
    • 如果您使用不同的环境变量文件,或者您已有 .env 文件,您需要手动复制这些变量。

确保 ClientId 和 Token 被传递到配置中

在您的 tina/config 文件中,确保 clientIdtoken 被传递到配置中。

注意:如果您从本地环境文件加载您的架构配置值,TinaCMS 的构建过程只会拾取 .env 文件(而不是 .env.local.env.development)。

配置分支

这可能已经在初始化过程中设置,但您应该确保分支被传递到配置中。

通常,您会希望使用与您的站点一起部署的分支。这将根据您的主机而有所不同,但大多数会提供某种环境变量供您使用。

NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF 是 Vercel 的系统环境变量,表示进行部署提交的分支。 HEADNetlify 使用的等效系统环境变量。

您完全配置的 tina/config.{js,ts} 应如下所示:

apiURL 被配置为在开发中使用本地内容 API(查询您的本地文件),在生产中使用托管内容 API(带身份验证)。

部署您的站点(使用 TinaCMS 管理)

下一步是更新您的部署配置,以便 TinaCMS 管理与您的站点一起构建。这允许您的编辑者通过 <your-site>/admin(或 your-site/admin/index.html)进入 CMS。

通常,您需要确保您的构建命令在站点的构建命令之前运行 tinacms build。这将与您的站点一起构建 TinaCMS 管理。您还需要确保您的 TinaCMS NEXT_PUBLIC_TINA_CLIENT_IDTINA_TOKEN 被设置为主机上的环境变量。

TinaCMS 管理是一个静态构建的 SPA —— 环境变量在构建时嵌入到其 JavaScript 中。您在管理中需要的任何变量(包括在自定义字段组件中)必须:(1) 使用 TINA_PUBLIC_NEXT_PUBLIC_ 前缀,并且 (2) 在您的托管提供商的环境设置中配置,以便在 tinacms build 运行时可用。请参阅环境变量参考以获取允许的前缀的完整列表。

我们为一些流行的部署选项提供了文档:

Last Edited: September 17, 2025