帮助
排障
打不开控制台、连不上路由器、提示密码错误或有人在用管理页、收不到 Telegram 通知时怎么办。
先看两样东西:控制台页头的会话状态,和容器日志 docker compose logs --tail 100 cpe-dash。大多数问题的原因都写在这两处。
打不开控制台
- 容器在运行吗:
docker compose ps应该显示healthy。显示restarting时看日志,最常见的原因是.env里没有DATA_ENCRYPTION_KEY。 - 端口对吗:默认是
18384,看.env的WEB_PORT。 - 用域名访问时返回 421:把域名加进
ALLOWED_HOSTS。局域网 IP、*.local、*.lan、*.ts.net不需要添加。 - 数据目录权限:日志提示
EACCES时,确认.env的PUID/PGID是data/的属主。
找不到设置码
docker compose logs cpe-dash 2>&1 | grep "setup code"设置码 24 小时内有效,重启容器会生成一个新的。
连不上路由器
在「设置 → 路由器」点「测试连接」,它会说明原因:
| 提示 | 怎么办 |
|---|---|
| 地址不可达 | 确认这台机器能打开 http://192.168.8.1;Docker 下检查容器能否访问局域网 |
| 密码错误,剩余 N 次 | 先在浏览器里确认密码,再回来保存。只剩 1 次时,烽燧会要求你勾选确认才再试 |
| 路由器已锁定 | 密码错太多次,路由器锁定了一段时间。等锁定结束后再保存正确的密码 |
| 有人正在登录官方网页 | 在官方网页上退出登录,再测试 |
| 需要先修改密码 | 路由器要求先在官方网页上改一次默认密码 |
页头显示「路由器密码错误 · 已停止登录」
路由器拒绝了密码,烽燧立刻停下,避免把路由器锁死(连续输错 3 次会锁住路由器)。到「设置 → 路由器」填写正确的密码并保存:烽燧先测试一次,成功就自动恢复。
页头显示「有人在用路由器管理页 · 已暂停」
有人登录了路由器官方网页(可能是你自己在另一台设备上,或者家人)。烽燧会每隔一段时间再看一次,对方退出后自动继续。期间数据停在最后一次读取的值,改动路由器的操作会返回「有人正在使用路由器」。
收不到 Telegram 通知
- 日志里有
telegram=on吗?没有就是TELEGRAM_BOT_TOKEN不对。 - 「设置 → Telegram」里列出你的聊天了吗?没有就重新生成绑定码,私聊机器人发送
/auth 绑定码。 - 告警级别够吗?默认只推送
warning及以上(ALERT_NOTIFY_MIN_SEVERITY)。 - 断网期间的通知会暂存,恢复后补发。
- 同一个机器人令牌只能被一个程序使用。如果别的程序也在用它,两边都会出错。
发短信失败
- 提示「No default country is known」:烽燧还不知道你的国家(路由器没有报告 SIM 卡信息)。输入带
+的完整号码,或在发送界面选择国家,也可以在.env设置DEFAULT_COUNTRY_CODE。 - 显示「已提交、状态未确认」:短信很可能已经发出,不要重发,稍后在会话里查看。
- 路由器拒绝发送:检查 SIM 卡余额和短信功能是否开通。
时间不对
发出短信的时间、历史曲线的时间都按 .env 的 TZ。改成你所在的时区(例如 Asia/Shanghai),重启容器。
数据打不开(DATA_QUARANTINED 告警)
密钥和加密文件对不上。文件没有被删除,只是改名为 *.unreadable-<时间>。找回原来的密钥后,按备份与恢复里的 rekey 恢复。
还是没解决
- 运行自检:
docker exec cpe-dash node dist/cli.js doctor - 在 GitHub Issues 提问,附上版本号、安装方式和相关日志。贴日志前先删掉密码、令牌、号码、短信内容和公网 IP。