Files
crypto_okx_hub/部署文档.md
T

103 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# crypto_okx_hub 部署文档
**仓库:** [https://git.bz121.com/dekun/crypto_okx_hub.git](https://git.bz121.com/dekun/crypto_okx_hub.git)
配套说明:**[使用说明.md](./使用说明.md)** · **[设计文档.md](./设计文档.md)**
关联客户端仓库:[crypto_okx](https://git.bz121.com/dekun/crypto_okx.git)
> 当前仓库处于 **设计定稿 / 代码待实现**。下文为第一期部署约定;可执行安装脚本随实现一并补齐。
---
## 1. 部署拓扑(推荐)
```
[局域网 PC 或一台云机] [云服务器 A] [云服务器 B]
crypto_okx_hub ──拉快照──▶ crypto_okx crypto_okx
(中控只一份) 公网域名 A 公网域名 B
HUB_BRIDGE_TOKEN=xxx HUB_BRIDGE_TOKEN=yyy
```
- 客户端:**必须**能被浏览器与中控以 **公网域名(建议 HTTPS)** 访问。
- 中控:可局域网;需能访问各客户端公网 URL。
---
## 2. 中控环境变量(草案)
实现后提供 `.env.example`,核心项预计包括:
| 变量 | 说明 |
|------|------|
| `APP_HOST` / `APP_PORT` | 例如 `0.0.0.0` / `5100` |
| `HUB_USERNAME` / `HUB_PASSWORD` | 中控登录 |
| `FLASK_SECRET_KEY` | Session |
| `DB_PATH` | 注册表 SQLite,默认 `./hub.db` |
| `HUB_PULL_INTERVAL_SEC` | 总览拉取间隔,默认 `10` |
| `HUB_PULL_TIMEOUT_SEC` | 单机超时,默认 `5` |
**不要**在中控配置任何 `OKX_API_*`。
---
## 3. 客户端侧(crypto_okx)联调清单
在每台客户端 `.env`(名称以实现为准):
| 变量 | 说明 |
|------|------|
| `HUB_BRIDGE_TOKEN` | 与中控登记的 Token 一致,足够长随机串 |
| (可选)`HUB_EMBED_FRAME_ANCESTORS` | 允许嵌入的中控 Origin |
并确认:
1. 公网 DNS → 该机;反向代理 HTTPS。
2. 快照 API 返回 `ok: true`(见设计文档 §6)。
3. Embed 路径可打开(默认倾向 `/embed`)。
防火墙可选:仅放行中控出口 IP 访问 `/api/hub/*`。
---
## 4. 安装步骤(实现后)
本地 / 局域网示意:
```bash
git clone https://git.bz121.com/dekun/crypto_okx_hub.git
cd crypto_okx_hub
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env # 编辑账号端口
python app.py
```
访问:`http://<中控局域网IP>:<APP_PORT>`
生产可用 PM2(实现后提供 `ecosystem.config.cjs`),安装路径建议 `/opt/crypto_okx_hub`。
---
## 5. 联调验收
1. 中控添加 2 个客户端(不同公网域名 + Token)。
2. 总览两卡均在线,持仓/浮盈与客户端页面大致一致。
3. 「打开」内嵌可见期权页;「新标签」独立打开。
4. `pm2 stop` 一台客户端后,总览该卡变离线,另一台正常。
---
## 6. 与客户端部署文档的关系
- 客户端安装、PM2、实盘密钥:见 **crypto_okx** 仓库内 [部署文档.md](https://git.bz121.com/dekun/crypto_okx/src/branch/main/部署文档.md) 等。
- 本仓库只描述 **中控自身** 及如何指向已部署的客户端。
---
## 变更记录
| 日期 | 说明 |
|------|------|
| 2026-10-01 | 初稿:双仓拓扑、env 草案、联调清单(代码待实现) |