3.2 KiB
3.2 KiB
光湖 · COS 中转桥 · 架构文档
新加坡 → COS → 广州 · 开源软件拉取中转 守护: 铸渊 · ICE-GL-ZY001 主权: TCS-0002∞ 冰朔
链路
铸渊触发下载需求
│
▼
┌─────────────────────────────────┐
│ 🇸🇬 新加坡服务器 (ZY-SVR-005) │
│ 43.156.237.110 · 4C8G · 35Mbps │
│ │
│ sg-fetch-push.js │
│ ① npm pack / git clone / wget │
│ ② 打包 + 计算 SHA256 │
│ ③ 推送到 COS 广州桶 │
└──────────────┬──────────────────┘
│ COS 内网 (免费流量)
▼
┌─────────────────────────────────┐
│ ☁️ 腾讯云 COS (广州) │
│ sy-finetune-corpus-1317346199 │
│ │
│ cos-bridge/ │
│ ├── npm/{name}/{ver}/{file} │
│ ├── git/{repo}/{branch}/{file} │
│ ├── file/{name}/{date}/{file} │
│ └── manifests/{date}-manifest.json │
└──────────────┬──────────────────┘
│ COS 内网 (免费流量)
▼
┌─────────────────────────────────┐
│ 🇨🇳 广州服务器 (ZY-SVR-004) │
│ 43.139.217.141 · 2C2G │
│ │
│ cn-pull-from-cos.sh │
│ ① 从 COS 拉取 (内网免费) │
│ ② SHA256 校验 │
│ ③ 解压/安装/部署 │
└─────────────────────────────────┘
触发方式
方式1:铸渊在 Codebuddy 里触发
铸渊: "我需要拉取 express 4.18.2"
→ Codebuddy SSH 到新加坡 → 运行 sg-fetch-push.js
→ 等推送完成 → SSH 到广州 → 运行 cn-pull-from-cos.sh
方式2:Gitea Actions(装 Runner 后)
# .gitea/workflows/cos-bridge-fetch.yml
on:
workflow_dispatch:
inputs:
type:
description: '类型 (npm/git/file)'
name:
description: '包名/仓库名'
version:
description: '版本 (npm) / 分支 (git)'
方式3:Gitea Webhook
铸渊在 Gitea 上创建 Issue 标题 cos-bridge: npm express 4.18.2
→ Webhook 触发 → 自动执行
文件清单
| 文件 | 位置 | 作用 |
|---|---|---|
sg-fetch-push.js |
scripts/cos-bridge/ |
新加坡侧:拉取+推送 |
cn-pull-from-cos.sh |
scripts/cos-bridge/ |
广州侧:从COS拉取 |
cos-bridge-manifest.json |
COS cos-bridge/manifests/ |
每日拉取清单 |
凭据管理
| 凭据 | 存储位置 | 谁能看 |
|---|---|---|
| COS Secret ID/Key | Secrets Vault (本地加密) | 用户可管理 · AI 只调用 |
| 新加坡 SSH 密钥 | Gitea Secrets | 仅铸渊自动调用 |
铸渊 · COS 中转桥架构 · 2026-05-12