2.4 KiB
2.4 KiB
公司 NAS Web Station 与工作手机 SDK 配置
更新:2026-07-12
结论
工作手机 SDK 是 FastAPI + WebSocket 服务,不能直接作为 PHP 网站放进 Web Station 的站点根目录运行。正确分工是:
Container Manager
└─ workphone-sdk-nas :8899 ← FastAPI、控制台、WebSocket、Mongo、Redis
DSM 登录门户/反向代理(可选)
└─ workphone 域名 :443 ← 反代到 127.0.0.1:8899
Web Station(可选)
└─ 仅放静态说明页、下载页或前端构建产物
NAS 已登记的运行目录
- 项目目录:
/volume1/docker/workphone-sdk - Compose:
docker-compose.nas.yml - SDK:
workphone-sdk-nas - 控制台:
http://192.168.110.101:8899/hub - 健康检查:
http://192.168.110.101:8899/health - WebSocket:
ws://192.168.110.101:8899/ws/device/{device_id}
Container Manager 操作
在 DSM → Container Manager → 项目中打开 workphone-sdk:
- 项目路径选择
/volume1/docker/workphone-sdk。 - Compose 文件选择
docker-compose.nas.yml。 - 确认
.env保留在 NAS,不从本机覆盖。 - 点击“构建”并“启动”。
- 等待
workphone-mongo-nas健康后,再确认workphone-sdk-nas为运行中。 - 查看日志,确认没有 Mongo/Redis 连接错误。
Web Station 配置建议
如果只需要访问 SDK 控制台,不必建立 Web Station 网站,直接使用 NAS 内网 8899 即可。
如果需要统一域名和 HTTPS:
- 在 DSM → 控制面板 → 登录门户 → 高级 → 反向代理新增规则。
- 来源协议 HTTPS、来源主机填 SDK 域名、来源端口 443。
- 目标协议 HTTP、目标主机
127.0.0.1、目标端口8899。 - 开启 WebSocket 支持;
/ws/不能被静态站点规则吞掉。 - 手机 Agent 地址改为
wss://<SDK域名>/ws/device/{device_id}。
验收
curl -fsS http://192.168.110.101:8899/health
curl -fsS http://192.168.110.101:8899/ready
curl -fsS http://192.168.110.101:8899/api/v3/integration/manifest
页面验收:/hub 可打开;容器重启后 SDK 自动恢复;手机 Agent 能上线并持续心跳;存客宝 BFF 能通过 API Key 访问 SDK。
当前状态
2026-07-12 已从本机同步最小运行集到 NAS 目录,并保留 NAS 原有 .env。由于当前 SSH 用户无法通过 sudo 操作 Container Manager,容器启动尚未完成;不把“文件已同步”标记为“服务已上线”。