docs(hub): 同步中控文档与故障实录

更新使用说明、部署文档与 README,反映已移除下单区、Web 登录与 PM2 验收流程;新增常见问题.md 整理部署排障。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-05-22 12:32:08 +08:00
parent 16b10e123e
commit 1ec1415e2b
7 changed files with 470 additions and 228 deletions
@@ -1,6 +1,9 @@
# Ubuntu 后台运行(中控 + 子代理)
`crypto_monitor_*` 策略目录:首次 **`cp .env.example .env`** 并编辑;**`.env` 不进 Git**`git pull` 不覆盖。升级前建议 `cp .env .env.backup.$(date +%Y%m%d)`。子代理启动前须 **`source` 该目录 `.env`**(见下文)。
> **推荐生产**:用本目录 **`ecosystem.config.cjs`** + PM2 一次启动 4 agent + hub,见 [部署文档.md](../部署文档.md) §五。
> 故障实录:[常见问题.md](../常见问题.md)
`crypto_monitor_*` 策略目录:首次 **`cp .env.example .env`** 并编辑;**`.env` 不进 Git**`git pull` 不覆盖。升级前建议 `cp .env .env.backup.$(date +%Y%m%d)`。子代理启动前须 **`source` 该目录 `.env`**(见下文;PM2 经 `run_agent.sh` 会自动处理)。
前台跑 `python agent.py` / `python hub.py` 时,关掉终端进程会结束。要**常驻后台**,可用下面三种之一(推荐 **systemd**)。
@@ -28,7 +31,11 @@ chmod +x manual_trading_hub/scripts/stop_hub_screen.sh
### 局域网内其他电脑访问中控
中控 **默认** `HUB_HOST=0.0.0.0``HUB_TRUST_LAN=开启`,同一局域网内可用 `http://<中控机局域网IP>:5100/` 打开页面(本机仍可用 `http://127.0.0.1:5100/`)。请确保防火墙放行端口,例如:`sudo ufw allow 5100/tcp`
中控 **默认** `HUB_HOST=0.0.0.0``HUB_TRUST_LAN=开启`,同一局域网内可用 `http://<中控机局域网IP>:5100/monitor` 打开(本机 `http://127.0.0.1:5100/`)。请确保防火墙放行端口,例如:`sudo ufw allow 5100/tcp`
-`.env` 设置了 **`HUB_PASSWORD`**,须先访问 `/login`(用户名见 `HUB_USERNAME`,默认 `admin`)。
- **公网** 建议只经 **HTTPS 反代** 访问,勿把 5100 直接暴露公网;详见 [部署文档.md](../部署文档.md) §八。
-**域名 HTTPS 能登录、内网 IP:5100 HTTP 不能**,见 [常见问题.md](../常见问题.md) §2.1Cookie Secure)。
若改为 **仅本机** 访问:`HUB_HOST=127.0.0.1``HUB_TRUST_LAN=0`,重启 hub。
@@ -171,14 +178,17 @@ ExecStart=/bin/bash -lc 'set -a; source YOUR_REPO/crypto_monitor_binance/.env; s
应看到 `…/manual_trading_hub/.venv/bin/python` 与 `…/manual_trading_hub/agent.py`。若用的是系统 `python3`,要么在**同一解释器环境**里装依赖,要么改为用 `start_agents_3screen.sh` 启动(脚本内写死 `VENV_PY`)。
5. **中控某账户一直红 / 非 JSON**
对应该端口的 agent 未启动,或 `HUB_AGENTS` 与 agent 的 `PORT` 不一致。本机先测:
对应该端口的 agent 未启动,或 **系统设置** 里 Agent URL 与 `PORT`1520015203不一致。本机先测:
`curl -sS http://127.0.0.1:1520x/status | head -c 400`
再看 `logs/mt-agent-*.log`。
再看 `logs/mt-agent-*.log` 或 `pm2 logs manual-agent-*`
6. **子代理端口与 Flask 冲突**
6. **PM2 日志仍见 `api_trade_key` / 添加关键位 SyntaxError**
多为旧版 hub 或未重启。`git pull` → `bash scripts/fix_hub_deps.sh` → `bash scripts/verify_hub_deploy.sh` → `pm2 restart manual-trading-hub`。中控**已移除下单区**,关键位请在监控卡片 **「实例」** 进各 Flask 操作。详见 [常见问题.md](../常见问题.md) §1。
7. **子代理端口与 Flask 冲突**
agent 使用环境变量 **`PORT`**(脚本里 15200、15202、15203);各策略 `.env` 里的 **`APP_PORT`** 给 Flask。二者**不能**相同。
7. **systemd 下改依赖或 `.env` 后**
8. **systemd 下改依赖或 `.env` 后**
与 screen 相同:`pip install` 或改 `EnvironmentFile` 后需 **`systemctl restart <unit>`**,否则仍是旧进程。
---