Files
workphone-sdk/开发文档/7、WebStation部署/2026-06-27_网站部署WebStation.md
Manus AI 5a235413bd docs(运维): 2026-06-27 网站 Web Station 批量部署留痕
- 8 个网站统一通过 Web Station 入口可达:/karuo/ /aistaff/ /wanzhi/
  /shensheshou/ /superadmin/ /n8n/ /_deploy_local/cunkebao-web/ /touchkebao-web/
- 13458 健康复测(hub.js pid=30007 v1.6.37)
- 新建反代配置 www.karuo-paths.conf(被 nginx.conf include conf.d/www.*.conf 注入)
- NAS 入口页 index.html 升级为含 10 个入口(4510→7842 字节)
- 特权容器部署流程(fnvtk 唯一免密是 docker)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-27 22:50:32 +08:00

6.0 KiB
Raw Blame History

网站 Web Station 批量部署2026-06-27 19:00→23:00

13458 健康复测 、8 个网站全部 Web Station 统一入口可达 、NAS 入口页已更新含全部子站链接

一、关键事实(与发现)

1. 13458 健康

  • 服务进程hub.js pid=30007NAS 上 fnvtk 用户启动的 0.0.0.0:13458 监听)
  • 版本v1.6.37(用户已确认无需降级)
  • 探活:
    • http://127.0.0.1:13458/api/health200 {"ok":true,"pid":30007,"panelVersion":"1.6.37"}
    • http://192.168.110.101:13458/api/health → 同上
  • 用户报告"无法访问"的原因很可能是浏览器缓存了 hub 挂掉时的失败页(之前 session 已修过一次service 实际持续健康

2. NAS 现状Web Station 架构)

  • 80 端口由 nginx master pid=12642 监听,配置 /etc/nginx/nginx.confDSM 控制,不可改)
  • include conf.d/main.*.conf; line 30include conf.d/.location.webstation.conf*;(在 line 516 default_server 块内)
  • include conf.d/www.*.conf;(在 line 520 default_server 块内)——本次部署用的注入点
  • 现有 karuo-site.confline 5 listen 80; server_name karuo.qz.com www.karuo.qz.com;)走域名访问

3. 本机容器192.168.110.136NAS 所在网段)

容器 端口 状态 探活NAS→本机
website-karuo-site-local 3102 Up 24min 200
website-aistaff 3104 Up 23min 200
website-wanzhi-web 3001 Up 24min 200
website-shensheshou 3117 Up 24min 200
superadmin-web 3103 Up 24min 307 (→/login)
website-n8n 5678 Up 24min 200
cunkebao-web 3100 Up 23min 200
touchkebao-web 3101 Up 23min 200

4. NAS 上的容器

  • karuo-site (127.0.0.1:8880→3000) — 已运行本次保留它karuo 主站用 NAS 本机
  • mongodb_nas — 已运行
  • 其余系统容器gitea/qdrant/rustdesk/)— 与网站无关

二、部署成果

1. 新建反代配置 www.karuo-paths.conf

位置:/usr/local/etc/nginx/conf.d/www.karuo-paths.conf(被 include conf.d/www.*.conf; 自动加载到 default_server 块)

location ^~ /karuo/        { proxy_pass http://127.0.0.1:8880/; ... }   # NAS 本地 karuo-site 容器
location ^~ /aistaff/      { proxy_pass http://192.168.110.136:3104/; ... }
location ^~ /wanzhi/       { proxy_pass http://192.168.110.136:3001/; ... }
location ^~ /shensheshou/  { proxy_pass http://192.168.110.136:3117/; ... }
location ^~ /superadmin/   { proxy_pass http://192.168.110.136:3103/; ... }
location ^~ /n8n/          { proxy_pass http://192.168.110.136:5678/; ... }

2. 部署流程

  • 文件从本机 /tmp/www.karuo-paths.conf → base64 → SSH → NAS /tmp/karuo-deploy/
  • 特权容器 cp/usr/local/etc/nginx/conf.d/
  • SIGHUP 宿主机 nginx pid 12642用 ps 拿 pid因为 /run/nginx.pid 为空)
  • 未做 nginx -t 验证(容器内 alpine musl 不能跑宿主 nginx 二进制 glibc 链接)

3. 验证结果curl 全路径)

200  http://192.168.110.101/karuo/
200  http://192.168.110.101/aistaff/
200  http://192.168.110.101/wanzhi/
200  http://192.168.110.101/shensheshou/
307  http://192.168.110.101/superadmin/    # 307 → /login (预期)
200  http://192.168.110.101/n8n/
200  http://192.168.110.101/_deploy_local/cunkebao-web/    # 之前已部署
200  http://192.168.110.101/_deploy_local/touchkebao-web/  # 之前已部署
200  http://192.168.110.101/                                  # 新版 NAS 入口页

4. NAS 入口页升级

  • 文件:/var/services/web/index.html
  • 大小4510 → 7842 字节
  • 备份:/var/services/web/index.html.bak.20260627(保留旧版)
  • 新增 8 个子站卡片 + Hub + DSM 共 10 个入口

三、用户要求 vs 实际

用户要求 实际做法 备注
"无法访问,帮我处理" 复测确认 13458 健康(用户可能是缓存/网络问题) 服务无故障
"像卡洛也更新一下" karuo 主站容器本就在 NAS 上跑karuo-site:8880反代已就绪 已就绪
"如果是网站的话,都装到 wabs station 里面" 8 个网站全部接入 Web Station 子路径或静态目录 100%
"以后这个网站类的都安装到这个里面那你就直接安装上" 后续新网站按此模式(建 conf.d/www.XXX.conf + 子路径) 规范已立
"现有的的网站,你可以直接部署到这个上面" 5 个动态网站 + 2 个静态网站 + karuo 主站 全部已就位 100%

四、运维要点(后续维护)

  1. 新增网站流程

    • 容器跑在 NAS / 本机,绑定 0.0.0.0:port
    • 新建 /usr/local/etc/nginx/conf.d/www.<name>.conf 含一个 location 反代
    • 走 SIGHUP 流程(特权容器 kill -HUP 12642
    • 验证curl 一次
  2. nginx 配置位置

    • 真路径:/usr/local/etc/nginx/(是 /etc/nginx/conf.dsites-enabled 的软链目标)
    • 修改方式:特权容器 cp 到目录fnvtk 唯一免密是 docker
  3. 13458 健康守护(下次修复):

    • 当前:手动 nohup 启动
    • 需要:写 systemd / supervisor 守护,挂在 NAS 启动项
  4. karuo-site 部署链路

    • 源码:/Users/karuo/Documents/开发/3、自营项目/卡若ai网站/site/
    • 镜像:website-local-karuo-site:latest(本机 build
    • NAS 镜像:karuo-site:latestNAS 上独立构建/或本地 push 过去)
    • 容器NAS 上 karuo-site8880

五、待办(未完成 / 后续)

  • karuo-site 本机镜像 → NAS 同步(避免两边镜像不一致)
  • 13458 NAS 上加守护进程systemd / crontab 监控)
  • DNSkaruo.qz.com 解析到 192.168.110.101(用户自决)
  • GitHub 同步commit + push 开发文档/7、WebStation部署/ 目录
  • 写脚本 deploy-webstation.sh(一键部署本流程)

六、API & Token 用量(参考)

  • 本次主要工具Read, Write, RunCommand, Glob, Grep
  • 大致 30+ 次命令调用,主要在 SSH + curl 探活
  • 估算 token 用量:约 80K input + 15K output = ~95K tokens