# StoryForge `storyforge.hyzq.net` 公网入口 当前公网接入不是把执行链整体迁到云服务器,而是: 1. 云服务器 `nginx` 提供 `https://storyforge.hyzq.net/` 2. 云服务器本地 `storyforge-web-v4.service` 承接静态前端 3. 云服务器本地 `collector-service` 直接承接业务 API 与数据库 4. 本机通过 SSH 反向隧道只桥接本地和局域网执行引擎到云服务器 当前已验证的 SSH 维护入口: - `ubuntu@111.231.132.51` - 公网部署目录:`/home/ubuntu/storyforge` - systemd 服务: - `storyforge-web-v4` - `storyforge-collector` - `nginx` ## 端口映射 - 云服务器 `127.0.0.1:8081` -> 云服务器本地 `collector-service` - 云服务器 `127.0.0.1:19191` -> 云服务器本地 `StoryForge Web V4` 静态服务 - 云服务器 `127.0.0.1:15670` -> 本机 `n8n :5670` - 云服务器不再默认依赖本机模型网关 - 云服务器 `127.0.0.1:28088` -> Windows `ASR :8088` - 云服务器 `127.0.0.1:15678` -> 本机 `huobao :5678` - 云服务器 `127.0.0.1:17860` -> 局域网 Windows `cutvideo :7860` - 云服务器 `127.0.0.1:19106` -> 局域网 NAS `live-recorder :19106` ## 本机常驻服务 - `com.storyforge.cloud-bridge` - 本机 `com.storyforge.collector` 可保留为本地开发,不再是公网必需项 - 本机 `com.storyforge.web-v4` 仍可保留为本地预览,不再是公网必需项 ## 云服务器 `nginx` 路由 - `/` -> `127.0.0.1:19191` - `/v2/*` -> `127.0.0.1:8081` - `/openapi.json` -> `127.0.0.1:8081/openapi.json` - `/healthz` -> `127.0.0.1:8081/healthz` - `/downloads/*` -> `127.0.0.1:8081/downloads/*` ## 当前优点 - `collector-service` 和数据库已经上云,公网主链不再依赖本机业务 API - 不需要把 `cutvideo / huobao / NAS live-recorder / 本机模型` 全部搬上云 - 公网入口统一 - 前端静态页不再依赖本机桥接 - 本地和局域网执行层不需要迁移即可继续提供能力 ## 当前限制 - 本地桥接断开时,相关执行引擎会不可用,但登录和基础业务 API 仍可用 - 这仍是混合部署测试架构,不是最终完全云原生部署 ## 标准化发布与回归 仓库内已经补了两个标准脚本: ```bash ./scripts/deploy_public_storyforge.sh ./scripts/smoke_public_storyforge.sh ``` 说明: - `deploy_public_storyforge.sh` 会备份远端 `web/storyforge-web-v4`,同步当前仓库的前端和 `collector-service/app`,重启 `storyforge-web-v4` / `storyforge-collector`,最后做公网 smoke。 - `smoke_public_storyforge.sh` 会检查公网 `/healthz`、`/`、`/assets/app.js` 和 `/openapi.json`,确认最新 Web bundle 与多平台路由都已经对外可见。 - 默认 SSH 口令可通过 `STORYFORGE_PUBLIC_PASSWORD` 传入,或从 macOS Keychain 的 `STORYFORGE_PUBLIC_KEYCHAIN_SERVICE` 读取;当前本机可沿用现有 `ai-glasses-debug-ssh` 条目。