Showing posts with label VPS. Show all posts
Showing posts with label VPS. Show all posts

Friday, 24 October 2025

✨3-step rookie: auto-update BPB VPN | 新手仅需3步,BPB VPN自动更新

Step1️⃣ 🏗️ Create new GitHub repo

Name it whatever like "my-auto-update"


Step2️⃣ 📁 Add workflow file

Must use exact path:

.github/workflows/{yourFileName}.yml

Paste the YAML config we provided

```

name: 晨更作业cf wop


on:

  push:

    branches:

      - main

  schedule:

    - cron: "0 3 * * 1"  # 每周一凌晨3点 UTC 执行(北京时间周一上午11点)

  workflow_dispatch:

    inputs:

      force_update:

        description: '是否强制更新(忽略版本检查)'

        required: false

        default: 'false'


permissions:

  contents: write


jobs:

  update:

    runs-on: ubuntu-latest

    timeout-minutes: 30

    steps:

      - name: 检出代码

        uses: actions/checkout@v4


      - name: 设置 Node.js 环境

        uses: actions/setup-node@v4

        with:

          node-version: "latest"


      - name: 安装依赖

        run: |

          npm install -g javascript-obfuscator

          sudo apt-get update

          sudo apt-get install -y jq curl unzip wget


      - name: 环境变量设置

        run: |

          echo "REPO_URL=https://api.github.com/repos/bia-pain-bache/BPB-Worker-Panel/releases" >> $GITHUB_ENV

          echo "TARGET_FILE=worker.js" >> $GITHUB_ENV  # 调整为 worker.js 以匹配混淆逻辑;如果需要 zip,可修改为 worker.zip 并添加解压后混淆


      - name: 检查与更新 Worker

        id: update_worker

        env:

          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

        run: |

          set -e

          log() { echo "[$(date +'%Y-%m-%d %H:%M:%S')] $1"; }


          log "☀️ 清晨启程,检查更新中…"


          LOCAL_VERSION=$(cat version.txt 2>/dev/null || echo "")

          log "本地版本:${LOCAL_VERSION:-无}"


          log "请求最新 Release 信息…"

          RESPONSE=$(curl -s --retry 5 --retry-delay 2 --max-time 30 \

            -H "Authorization: token $GITHUB_TOKEN" \

            -H "Accept: application/vnd.github.v3+json" \

            "$REPO_URL")

          if [ $? -ne 0 ]; then

            log "❌ 无法访问 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 "$TAG_NAME" ] || [ "$TAG_NAME" = "null" ]; then

            log "❌ 获取版本号失败"

            exit 1

          fi


          if [ -z "$DOWNLOAD_URL" ] || [ "$DOWNLOAD_URL" = "null" ]; then

            # 备用下载方式:从 repo 下载文件(假设文件在 repo 根目录)

            DOWNLOAD_URL="https://github.com/bia-pain-bache/BPB-Worker-Panel/raw/${TAG_NAME}/${TARGET_FILE}"

            log "⚠️ 未找到 Release 资产,使用 raw 文件下载 URL: $DOWNLOAD_URL"

          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 --tries=5 --timeout=30 -O "origin.js" "$DOWNLOAD_URL"

          if [ $? -ne 0 ]; then

            log "❌ 下载失败"

            exit 1

          fi


          # 如果是 zip,添加解压(当前假设 js;如果 zip,取消注释并调整)

          # log "📦 解压中…"

          # unzip -o "origin.js" > /dev/null  # 实际为 zip 时改名

          # rm "origin.js"

          # mv worker.js origin.js  # 假设 zip 内有 worker.js


          log "🔒 混淆 JS 代码…"

          javascript-obfuscator origin.js --output _worker.js \

            --compact true \

            --identifier-names-generator hexadecimal \

            --rename-globals false \

            --string-array false \

            --transform-object-keys false \

            --self-defending false \

            --simplify true

          echo "// Auto obfuscated at $(date -u)" >> _worker.js

          rm origin.js


          echo "$TAG_NAME" > version.txt

          log "✨ 更新完成,当前版本:$TAG_NAME"


          echo "tag_name=$TAG_NAME" >> $GITHUB_OUTPUT


      - name: 提交同步结果

        if: success()

        uses: stefanzweifel/git-auto-commit-action@v5

        with:

          commit_message: "🔄 自动同步 Worker 版本: ${{ steps.update_worker.outputs.tag_name }}"

          commit_author: "github-actions[bot] <github-actions[bot]@users.noreply.github.com>"

```


Step3️⃣ 🚀 Let magic happen

GitHub Actions auto-triggers

Monitors source repo changes

Completes Build & Deploy automatically


💡 Tech highlights:

✅ Webhook auto-monitoring

✅ CI/CD pipeline

✅ Real-time GitHub sync

✅ Zero manual operation


Result preview👉

Every time source updates

Your VPS auto-pulls latest code

Runs Build Script for new version

Totally hands-free!




Step1️⃣ 🏗️ 新建GitHub仓库

创建你的专属代码库 Repository

命名超随意~比如"my-auto-update"


Step2️⃣ 📁 创建Workflow文件

路径必须严格按:

.github/workflows/{你的文件名}.yml

复制提供的YAML配置 一键粘贴就行


Step3️⃣ 🚀 坐等自动化执行

GitHub Actions自动触发

实时监控源Repo更新

自动完成Build & Deploy


💡 核心科技:

✅ Webhook自动监听

✅ CI/CD无缝衔接

✅ 实时同步GitHub源

✅ 完全告别手动操作


效果预览👉

每次源仓库更新

你的VPS都会自动拉取最新代码

执行Build Script生成新版本

全程无需人工干预!


Referencing this/参考了这个 https://github.com/DuolaD/BPB-Auto-update-and-obfuscate/blob/main/.github/workflows/update_worker.yml

Friday, 25 July 2025

🔥【3x-ui Tutorial】3x-ui: Your Digital Invisibility Cloak! - 🔥【3x-ui教程】3x-ui:你的数字隐身衣来了!

Want network privacy protection? Just like traditional Chinese medicine, the right remedy for the right condition! 3x-ui is that magical "immortal herb" that cures network insecurity!

GitHub official: github.com/MHSanaei/3x-ui


✨ What is 3x-ui?

- Open-source free Xray management panel, rarer than ginseng!

- Multi-protocol support: Vmess, Vless, Trojan etc., as versatile as herbal soup

- Visual interface, simpler than reading prescriptions


🚀 Why choose it?

- Completely free: costs nothing, rarer than wild lingzhi

- Beginner-friendly: just point and click, easier than brewing goji berries

- Privacy protection: encrypted data transmission, like wearing golden bell shield

- Multi-user management: one setup benefits the whole family


📦 Docker one-click deployment:

1. Prepare VPS server (like preparing medicine pot)

2. Install Docker (prepare tools)

3. Copy the docker-compose.yml below (Your "herb recipe")

4. Run in VPS: docker-compose up -d (This is like "drinking the medicine" - instant effect!)

5. Access management panel (enjoy the effects)


Example docker-compose.yml:



Update regularly, like using "fresh herbs"




想要网络隐私保护?就像喝中药一样,对症下药才是王道!3x-ui就是那味"神仙草",专治网络不安全!


GitHub官网:github.com/MHSanaei/3x-ui


✨ 什么是3x-ui?

- 开源免费的Xray管理面板,比人参还珍贵!

- 支持多协议:Vmess、Vless、Trojan等,像百草汤一样全能

- 可视化界面,比看病抓药还简单


🚀 为啥选它?

- 完全免费:不花一分钱,比野生灵芝还难得

- 小白友好:点点鼠标就搞定,比泡枸杞还容易

- 隐私护体:数据加密传输,像穿了金钟罩

- 多用户管理:一人配置全家受益


📦 Docker一键部署:

1. 准备VPS服务器(选个靠谱的"药罐子")

2. 安装Docker(相当于"烧开水"的步骤)

3. 复制图中的docker-compose.yml(就是"抓药"的配方)

4. 在 VPS 里运行:docker-compose up -d(这步就像 "喝药",喝完就见效!)

5. 访问管理面板(享受疗效)


例子 docker-compose.yml:


记得定期更新,就像 "中药要新鲜"


Friday, 18 July 2025

How I Finessed 4 Free ARM Babies — Oracle Cloud Hits Different 💸 | 🔥白嫖4台ARM小鸡攻略 甲骨文免费云真香

Free 4-Core 24G Split into 4 VPS — Cloud Gaming IRL 😭| 免费4核24G变4台VPS爽翻天

### **Step-by-Step (Fortune Teller Edition)**  

1. **Find the "Lucky Spot"**  

   Login → Click "☰" → Select **Region** → Target **Phoenix**!  

   *Psst: Seoul/Singapore sold out! Try Jakarta/Mumbai (turtle-speed internet included 🐢)*  


2. **Order Your "Cloud Bubble Tea"**  

   Click **Create Instance** →  

   ☑️ Name: `Free-Rider-1` (get creative!)  

   ☑️ Image: **Ubuntu 22.04 Minimal** (skinny OS = more power!)  

   ☑️ Shape: **Arm Ampere A1** → Slide to **1 CPU + 6GB RAM + 50GB SSD**  

   ☑️ SSH Key: Generate one (*Clueless? Google "ssh-keygen" - 30 sec magic!* → ssh -i pathToKey opc@hostIP)  

   ✅ Click **Create** → Wait 1 min → **BAM! Server alive!**  


3. **Xerox Machine Mode**  

   Repeat Step 2 → Create **Free-Rider-2/3/4**!  

   *Watch them line up like obedient ducklings* 🐥🐥🐥🐥  

   ⚠️ Golden Rule: Total storage ≤ 200GB (50GB x 4 = perfect!)  


---


### **Pro Survival Tips**  

- 🌍 **Cold Regions = More Quota** (Mumbai/Jakarta FTW!)  

- ⏰ **Log in weekly** or Oracle will "recycle" your VPS ♻️  

- 🚫 **NEVER pick Windows** (ARM says NOPE!)  

- 🎮 **Playtime VPS**: SSH → host websites/run bots/docker party! 


🚀操作步骤(超详细版)

  1. 选对 “风水宝地”
    登录后点右上角 “三横”→选 “区域”→认准Phoenix(凤凰城)!新加坡、首尔这些热门地 Arm 配额早被抢光啦~(小声:印尼、孟买也能试试,不过网速可能像蜗牛)

  2. 创建实例像点奶茶
    点 “创建实例”→
    ✅名称:随便填(比如 “白嫖一号”)
    ✅镜像:选Ubuntu 22.04 Minimal(内存占用少,省资源小能手)
    ✅形状:选Arm Ampere A1→配置拉到1c6g50g, VM.Standard.A1.Flex(免费神器!)
    ✅密钥:生成一个(不会的话百度 “SSH 密钥生成”,30 秒搞定 → ssh -i 你的密钥文件路径 opc@主机公网IP)
    ✅点 “创建”,等 1 分钟就开机啦!

  3. 四台主机 “批量复制”
    重复步骤 2,再创建三台!注意总磁盘别超过 200G(每台 50G 刚好)。最后去 “实例” 页面,四台整整齐齐排排坐,成就感拉满!

💡省钱小秘诀

  • 💡选冷门区域(如孟买),配额多还没人抢!

  • 💡主机别闲置,偶尔连一下,防止被 Oracle “回收”~

  • ⚠️ 避坑:别选Windows(不支持ARM),Ubuntu最省心

  • 🚀 玩VPS:SSH连上就能建站/挂机器人/跑docker(爽!)