当前部署失败的主要原因是缺少必要的GitHub Secrets配置。
本项目提供两种互补的部署方式:
- 用途:通过 GitHub Actions 自动部署到 Cloudflare Workers
- 触发条件:push 到 main 分支或在 Actions 中手动触发
- 需要配置:GitHub Secrets(至少
CLOUDFLARE_API_TOKEN,CLOUDFLARE_ACCOUNT_ID) - 重要提示:使用此方式时,Worker 的环境变量/Secrets 以 GitHub Secrets 为“单一真源”,每次 Actions 部署都会按工作流脚本把变量写入 Cloudflare。请不要再在 Cloudflare 控制台为同一个 Worker 手动填写同名变量,否则这些手动修改会在下次 Actions 部署时被覆盖而失效。
- 用途:在 Cloudflare Dashboard 中通过 "Deploy to Workers" 按钮从 Git 仓库部署
- 触发条件:用户在 Cloudflare 控制台点击部署按钮
- 需要配置:在 Cloudflare 控制台中完成 Git 集成和环境变量配置(本仓库不包含
deploy.yml文件)
在GitHub仓库中设置以下Secrets:
必需配置:
CLOUDFLARE_API_TOKEN- Cloudflare API TokenCLOUDFLARE_ACCOUNT_ID- Cloudflare Account ID
设置步骤:
- 前往您的GitHub仓库
- 点击 Settings → Secrets and variables → Actions
- 点击 "New repository secret"
- 添加上述两个Secrets
获取Account ID:
- 登录Cloudflare控制台
- 在右上角选择您的账户
- 在左侧菜单中找到"Workers & Pages"
- 在页面中可以看到您的Account ID
创建API Token:
- 登录Cloudflare控制台
- 前往 My Profile → API Tokens
- 点击 "Create Token"
- 使用 "Edit Cloudflare Workers" 模板(推荐为本项目单独创建一个 Token)
- 确认权限中至少包含:
- Workers:对脚本的读取/编辑/部署权限(模板默认会勾选)
- 如需让脚本自动管理 D1 或 R2,可额外勾选 D1 Databases / R2 Storage 的编辑权限
- 生成并复制 Token,并将其填入 GitHub Secrets 中的
CLOUDFLARE_API_TOKEN
配置完成后,GitHub Actions 应该能够正常部署。您可以通过以下方式验证:
-
手动触发工作流:
- 前往仓库的 Actions 标签页
- 选择 Deploy to Cloudflare Workers 工作流
- 点击 Run workflow
-
或者推送新的更改到
main分支
如果您是通过 Fork 本仓库 + GitHub Actions 部署的,建议配置上游(upstream)远程,以便跟随作者更新:
- 在本地克隆您的 Fork 仓库:
git clone https://github.com/<your-name>/temp-mail.git
cd temp-mail- 添加上游远程(指向作者仓库):
git remote add upstream https://github.com/noxenys/temp-mail.git- 需要同步最新代码时,在本地执行:
git fetch upstream
git merge upstream/main- 将合并后的代码推送回您的 Fork 仓库(会触发 Actions 部署):
git push origin main完成以上步骤后,您的仓库会跟随作者仓库保持更新,GitHub Actions 会在您 push 到自己的仓库时自动重新部署到您的 Cloudflare 账户。
如果仍然失败,请检查:
- Secrets是否正确配置
- Cloudflare账户是否有足够的权限
- 网络连接是否正常
如果遇到问题,请参考: