更喜欢观看视频?
要将您的站点部署到生产环境,您需要将 Tina 连接到托管的后端。本文档将引导您完成从本地运行到生产运行的步骤。
tina/tina-lock.json
)。前往 app.tina.io 并创建一个新的项目。系统会要求您连接您的 Github 账户并选择要连接到 TinaCloud 的存储库。
下一步是连接您的站点。一旦连接,您的项目编辑者将能够直接从站点内将内容保存到其 GitHub 存储库中。
npx @tinacms/cli init backend
这将会:
.env
文件。在您的 tina/config 文件中,确保 clientId
和 token
被传递到配置中。
// tina/config.ts//...export default defineConfig({//...token: process.env.TINA_TOKEN, // 这应该与您的 .env 文件中的值匹配clientId: process.env.NEXT_PUBLIC_TINA_CLIENT_ID // 这应该与您的 .env 文件中的值匹配branch,schema: {collections: [//...// 查看 https://tina.io/docs/schema/ 以获取有关“collections”的更多信息]}})
注意:如果您从本地环境文件加载您的架构配置值,Tina 的构建过程只会拾取
.env
文件(而不是.env.local
或.env.development
)。
这可能已经在初始化过程中设置,但您应该确保分支被传递到配置中。
通常,您会希望使用与您的站点一起部署的分支。这将根据您的主机而有所不同,但大多数会提供某种环境变量供您使用。
// tina/config.ts//...+ const branch =+ process.env.NEXT_PUBLIC_TINA_BRANCH ||+ process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF ||+ process.env.HEAD ||+ ''export default defineConfig({//...token: '<Your Read Only Token>' // 在 app.tina.io 上生成clientId: '<Your Client ID>', // 在 app.tina.io 上生成branch,schema: {collections: [//...// 查看 https://tina.io/docs/schema/ 以获取有关“collections”的更多信息]}})
您完全配置的 tina/config.{js,ts}
应如下所示:
import { defineConfig } from 'tinacms'const branch =process.env.NEXT_PUBLIC_TINA_BRANCH ||process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF ||process.env.HEADexport default defineConfig({token: '<Your Read Only Token>' // 在 app.tina.io 上生成clientId: '<Your Client ID>', // 在 app.tina.io 上生成branch,schema: {// ...},})
apiURL 被配置为在开发中使用本地内容 API(查询您的本地文件),在生产中使用托管内容 API(带身份验证)。
下一步是更新您的部署配置,以便 TinaCMS 管理与您的站点一起构建。这允许您的编辑者通过 <your-site>/admin
(或 your-site/admin/index.html
)进入 CMS。
通常,您需要确保您的构建命令在站点的构建命令之前运行 tinacms build
。这将使 TinaCMS 管理与您的站点一起构建。您还需要确保您的 Tina NEXT_PUBLIC_TINA_CLIENT_ID
和 TINA_TOKEN
被设置为主机上的环境变量。
我们为一些流行的部署选项提供了文档: