在 Firebase 上托管
前提条件
初始设置
转到 Firebase 控制台并创建一个新项目(除非您已有一个项目)。您需要全局安装 firebase-tools
(node.js)
npm install -g firebase-tools
使用 firebase login
登录到 Firebase(在您的本地计算机上设置),这将打开一个浏览器,您可以在其中选择您的帐户。如果您已登录但登录到错误的帐户,请使用 firebase logout
。
firebase login
在您的 Hugo 项目的根目录中,使用 firebase init
命令初始化 Firebase 项目
firebase init
从这里
- 在功能问题中选择托管
- 选择您刚刚设置的项目
- 接受数据库规则文件的默认值
- 接受发布目录的默认值,即
public
- 如果您正在部署单页应用程序,请在问题中选择“否”
使用 Firebase 和 GitHub CI/CD
在 Firebase 的新版本中,适用其他一些问题
- 使用 GitHub 设置自动构建和部署?
在这里,您将被重定向到登录您的 GitHub 帐户以获取权限。确认。
- 您想为哪个 GitHub 存储库设置 GitHub 工作流程?(格式:用户/存储库)
以以上格式(帐户/存储库)包含您将使用的存储库,Firebase 脚本将检索凭据,创建一个您稍后可以在 GitHub 设置中管理的服务帐户。
- 设置工作流程以在每次部署前运行构建脚本?
在这里,您可以有机会在运行部署之前包含一些命令。
- 当 PR 合并时,设置自动部署到您网站的实时通道?
您可以保留默认选项(main)
之后,Firebase 已在您的项目中设置了 CI/CD。之后运行
hugo && firebase deploy
这样您就可以手动初始化应用程序。之后,您可以从以下位置管理和修复您的 GitHub 工作流程:https://github.com/your-account/your-repo/actions
不要忘记在推送之前更新您的静态页面!
手动部署
要部署您的 Hugo 站点,请执行 firebase deploy
命令,您的站点将立即上线
hugo && firebase deploy
CI 设置(其他工具)
您可以使用以下命令生成部署令牌
firebase login:ci
您还可以设置您的 CI 并将令牌添加到私有变量中,例如 $FIREBASE_DEPLOY_TOKEN
。
然后,您可以在构建中添加一个步骤,以使用令牌进行部署
firebase deploy --token $FIREBASE_DEPLOY_TOKEN