Cloudflare Pages + Workers 零成本部署全攻略
本指南将指导你如何将 OpsKitPro 部署到 Cloudflare 平台,利用其全球边缘网络提供高性能的 SRE 诊断服务。
🥇 1. 准备工作
- 代码准备:确保代码已推送到 GitHub/GitLab。
- 账号设置:在 Cloudflare Dashboard 注册并启用 Pages 和 Workers。
🥈 2. 部署 Cloudflare Pages (前端 + Next.js App)
OpsKitPro 使用的是 Next.js (App Router),通过 @cloudflare/next-on-pages 可以完美适配。
步骤:
- 进入 Workers & Pages → Create application → Pages → Connect to Git。
- 选择你的仓库。
- 构建设置 (Build Settings):
- Framework preset:
Next.js - Build command:
npm run build - Output directory:
.vercel/output/static(取决于配置,通常 CF 会自动识别)。
- Framework preset:
- 环境变量 (Environmental Variables):
NODE_VERSION:18或更高。
🥉 3. 边缘运行时配置 (Edge Runtime)
项目中所有诊断 API 已配置为 export const runtime = 'edge',这使其能够自动运行在 Cloudflare Workers 的 V8 隔离环境中。
关键优化:
- DoH 查询:API 内部使用
https://cloudflare-dns.com/dns-query,无需额外库支持。 - SSL 探测:通过公共 API 或边缘 Node 模拟实现,避免了 Edge Runtime 对
tls模块的限制。
🧩 4. 绑定自定义域名 (SEO 关键)
- 在 Pages 项目的 Custom domains 选项卡中添加
opskitpro.com。 - Cloudflare 会自动处理 SSL 映射。
🧱 5. 持续集成 (CI/CD)
每次你向 GitHub 推送代码:
- Cloudflare Pages 会自动触发构建。
- 边缘函数(API Routes)会同步更新。
- Obsidian 同步:你可以将 Obsidian 库作为 Git Submodule,或者直接将
kb/目录源码纳入主库,实现“笔记即文章”的自动发布。
💡 专家建议:部署完成后,请在 Cloudflare 的 Speed 选项卡中开启 Early Hints 和 Brotli 压缩,以获得极致的加载速度。