3.5 KiB
3.5 KiB
部署指南:使用 GitHub Actions 自动化部署
XUGOU 系统现在采用单一 Worker 部署方式,前后端集成在一个 Worker 中,并推荐使用 GitHub Actions 实现自动化部署,流程更简单、更安全。
部署优势
- 自动化: 每次推送代码到
main分支,即可自动完成构建和部署,无需手动操作。 - 高安全性: 无需在代码中明文存储数据库 ID 等敏感信息,全部通过 GitHub 的加密 Secrets 功能管理,避免隐私泄露。
- 配置简单: 只需一次性配置,后续无需再关心部署细节。
一键部署步骤
第 1 步:准备 Cloudflare 环境
-
创建 D1 数据库
- 登录到 Cloudflare 控制台。
- 访问左侧菜单栏 Workers 和 Pages -> D1,点击 “创建数据库”。
- 为数据库命名,例如
xugou_db。 - 创建成功后,记录下数据库的 “数据库 ID” 和 “数据库名称”,后续步骤会用到。
-
创建 API 令牌
- 在 Cloudflare 控制台,点击右上角的用户图标,进入 “我的个人资料” -> “API 令牌”。
- 点击 “创建令牌”,然后选择 “编辑 Cloudflare Workers” 这个模板。
- 保持默认的权限配置不变,点击 “继续以显示摘要” -> “创建令牌”。
- 立即复制生成的 API 令牌,这个令牌只会显示一次。
第 2 步:Fork 项目并配置 GitHub Secrets
-
Fork 仓库
- 访问项目主页 https://github.com/zaunist/xugou 并点击右上角的 Fork 按钮,将项目复制到你自己的 GitHub 账户下。
-
修改
wrangler.toml文件(如果尚未修改)- 确保你 Fork 的仓库根目录下的
wrangler.toml文件中的d1_databases部分使用了占位符。本项目已为您配置好,无需修改。正确的配置如下:[[d1_databases]] binding = "DB" database_name = "${D1_DATABASE_NAME}" # 使用占位符 database_id = "${D1_DATABASE_ID}" # 使用占位符
- 确保你 Fork 的仓库根目录下的
-
配置 GitHub Secrets
- 进入你 Fork 后的 GitHub 仓库,点击 Settings -> Secrets and variables -> Actions。
- 点击 New repository secret 按钮,依次添加以下 4 个 Secret:
CF_API_TOKEN: 粘贴你在第 1 步中创建并复制的 Cloudflare API 令牌。CF_ACCOUNT_ID: 你的 Cloudflare 账户 ID (可以在 Cloudflare 控制台主页的右侧找到)。D1_DATABASE_ID: 你在第 1 步中创建的 D1 数据库的 ID。D1_DATABASE_NAME: 你在第 1 步中创建的 D1 数据库的名称。
第 3 步:触发部署
配置完成后,部署将自动进行!
- 自动部署: 每当你向你的仓库的
main分支推送代码时,GitHub Action 就会自动开始构建和部署流程。 - 手动部署: 你也可以进入仓库的 Actions 标签页,点击左侧的 "Deploy to Cloudflare" 工作流,然后点击 "Run workflow" 按钮来手动触发一次部署。
部署完成
部署过程大约需要 1-2 分钟。完成后,您的 XUGOU 监控平台就可以通过 Cloudflare Worker 的 URL 访问了。
- 访问地址:
https://<你的项目名>.<你的workers.dev子域>.workers.dev - 项目名在
wrangler.toml文件中定义 (默认为xugou-app)。 - 你也可以在 Cloudflare 控制台为你的 Worker 绑定自定义域名。