🚀 BPB-Worker-Panel 最新版更新与 Cloudflare Pages 自动部署教程(附工作流)
🚀 BPB-Worker-Panel 最新版更新与 Cloudflare Pages 自动部署教程(附工作流)
🎉 欢迎阅读本期技术分享!
📢 加入 Telegram 技术交流群讨论更多部署问题:
👉 t.me/tweek820
BPB-Worker-Panel 近期进行了重大更新,尤其是 文件目录结构 与 工作流 GitHub Actions 配置。本文将一步步教你如何用 GitHub + Cloudflare 实现自动部署,并附上经过优化的工作流脚本。视频地址:https://youtu.be/AY7n2ssBlmM
🧰 准备工作
在开始之前,请确保你已经准备好以下账户和资源:
✅ 一个 GitHub 账号
✅ 一个 Cloudflare 账号
✅ 一个域名(可免费域名,例如 Freenom)
🛠️ 一、GitHub 仓库部署
1. 添加工作流文件(2025.4.25 版本)
在GitHub新建一个new repository
在项目根目录创建一个新文件 .github/workflows/upbpb.yml
,内容如下:
name: Auto Update Worker
on:
push:
branches:
- main
schedule:
- cron: "0 1 * * *" # 每天凌晨1点运行
workflow_dispatch:
inputs:
force_update:
description: '是否强制更新(忽略版本检查)'
required: false
default: 'false'
permissions:
contents: write
jobs:
update:
runs-on: ubuntu-latest
steps:
- name: 检出仓库
uses: actions/checkout@v4
- name: 设置环境
run: |
echo "REPO_URL=https://api.github.com/repos/bia-pain-bache/BPB-Worker-Panel/releases" >> $GITHUB_ENV
echo "TARGET_FILE=worker.zip" >> $GITHUB_ENV
- name: 检查并更新 Worker
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # 使用 GitHub Token 认证
run: |
# 日志函数
log() { echo "[$(date +'%Y-%m-%d %H:%M:%S')] $1"; }
log "开始检查更新..."
# 获取本地版本
LOCAL_VERSION=$(cat version.txt 2>/dev/null || echo "")
log "本地版本: ${LOCAL_VERSION:-无}"
# 获取最新 Release
log "获取最新 Release 信息..."
RESPONSE=$(curl -s --retry 3 -H "Authorization: token $GITHUB_TOKEN" -H "Accept: application/vnd.github.v3+json" "$REPO_URL")
if [ $? -ne 0 ]; then
log "ERROR: 无法访问 GitHub API"
exit 1
fi
TAG_NAME=$(echo "$RESPONSE" | jq -r '.[0].tag_name')
DOWNLOAD_URL=$(echo "$RESPONSE" | jq -r '.[0].assets[] | select(.name == "'"$TARGET_FILE"'") | .browser_download_url')
if [ -z "$DOWNLOAD_URL" ] || [ "$DOWNLOAD_URL" == "null" ]; then
log "ERROR: 未找到 $TARGET_FILE"
exit 1
fi
log "最新版本: $TAG_NAME"
# 判断是否需要更新
FORCE_UPDATE=${{ github.event.inputs.force_update || 'false' }}
if [ "$LOCAL_VERSION" = "$TAG_NAME" ] && [ "$FORCE_UPDATE" != "true" ]; then
log "已是最新版本,无需更新"
exit 0
fi
# 下载并更新
log "下载 $TARGET_FILE..."
wget -q -O "$TARGET_FILE" "$DOWNLOAD_URL"
log "解压 $TARGET_FILE..."
unzip -o "$TARGET_FILE"
rm "$TARGET_FILE"
echo "$TAG_NAME" > version.txt
log "更新完成,新版本: $TAG_NAME"
- name: 提交更改
if: success() # 仅在更新成功时提交
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: "🔄 自动同步 Worker 版本: ${{ steps.check_update.outputs.tag_name || '未知' }}"
commit_author: "github-actions[bot] <github-actions[bot]@users.noreply.github.com>"
☁️ 二、Cloudflare Pages 部署
1. 创建 Pages 项目
打开 Cloudflare → Workers & Pages → 点击创建 Pages;
选择 GitHub 仓库并连接 BPB 项目;
设置为生产环境构建并部署。
2. 自定义域名绑定
在 Cloudflare DNS 中添加 CNAME 记录指向 Pages 提供的默认域名;
关闭代理 → 打开 “始终使用 HTTPS”;
配置 SSL/TLS 为完全加密 模式,避免“安全问题”提示。
3. 添加变量和 KV 命名空间
Pages > Settings > Environment variables:
UUID
:自定义 UUIDPROXY_IP
:优选节点 IPTR_PASS
:面板访问密码
添加 KV 命名空间并绑定,注意:不要使用 bpb 等敏感关键字。
📋 三、BPB 面板使用说明
浏览器访问:https://你的域名/panel
默认密码登录后请及时修改;
设置你的节点代理、UUID、名称、限速等参数;
所有配置支持 Web UI 可视化修改。
🔍 四、推荐 IP / 节点测速工具
📚 参考来源:
GitHub Action 脚本参考作者:Hans 汉斯