1.3 KiB
1.3 KiB
技术说明 — Layer 3 宿主机巡检 Telegram 打通
日期: 2026-06-07
目标
设置页保存 telegram_bot_token / telegram_chat_id 后,Layer-3 health_monitor.sh 能可靠发送 Telegram(/health 连续失败 → 重启通知)。
三层配置读取顺序(health_monitor.sh)
- 宿主机
${NEXUS_ROOT}/.env、docker/.env.prod - 容器
/app/.env(docker exec grep) - 新增 容器内 Python 从 MySQL
settings表加载(与运行时load_settings_from_db一致)
应用内同步(保存 Telegram 时)
ops_patrol_sync.sync_telegram_to_env 写入:
/app/.env+NEXUS_PERSIST_DIR/.env(nexus-state 卷)- 若
NEXUS_HOST_ROOT可写:{NEXUS_HOST_ROOT}/docker/.env.prod
API
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /api/settings/ops-patrol/status |
巡检 Telegram / env 同步状态 |
| POST | /api/settings/ops-patrol/sync-telegram |
手动同步 DB → .env |
部署
deploy-production.sh 健康检查通过后,若远程无 nexus-health-monitor cron,自动执行 install_ops_cron.sh。
回滚
- revert 本 commit;cron 条目可保留(行为与旧版兼容,仅多 DB 回退)
- 删除
.env中NEXUS_TELEGRAM_*不影响应用内 DB 配置