5.3 KiB
5.3 KiB
Boss 服务器连接与部署说明
1. 服务器信息
- 主机:
106.53.170.158 - 用户:
ubuntu - 域名:
boss.hyzq.net
当前优先连接方式不是手敲 ssh,而是仓库外已经建好的 skill:
~/.codex/skills/boss-server-debug/SKILL.md
2. 连接方式
ssh ubuntu@106.53.170.158
或直接使用 skill:
"$HOME/.codex/skills/boss-server-debug/scripts/server_ssh.sh" health
"$HOME/.codex/skills/boss-server-debug/scripts/server_ssh.sh" exec "systemctl status boss-web --no-pager"
"$HOME/.codex/skills/boss-server-debug/scripts/server_ssh.sh" login
密码当前已经存入本机 macOS Keychain,避免后续 Codex 线程因背景压缩丢失连接方式。
3. DNS 与 HTTPS 前提
当前要启用 https://boss.hyzq.net,必须先满足:
boss.hyzq.net的 A 记录指向106.53.170.158
仓库里已提供:
deployment/Caddyfilescripts/bootstrap-server.shscripts/deploy-server.sh- Codex skill:
boss-server-debug
DNS 生效后,Caddy 会自动申请和续签证书。
4. 服务器部署步骤
本地发起部署:
cd /Users/kris/code/boss
./scripts/deploy-server.sh
当前 deploy-server.sh 已支持:
- 优先读取 macOS Keychain 中保存的服务器密码
- 若 Keychain 不可用,则读取
BOSS_SERVER_PASS - 远端
npm run build前自动清理.next - 重启
boss-web/caddy后自动执行curl -fsS http://127.0.0.1:3000/api/health
如果需要覆盖服务器默认环境,可在服务器写入:
sudo cp /opt/boss/.env.server.example /opt/boss/.env.server
sudo systemctl restart boss-web
当前最重要的开关是:
- 默认固定码:
BOSS_AUTH_VERIFICATION_MODE=fixed - 临时切到真实邮件:
BOSS_AUTH_VERIFICATION_MODE=email
部署服务器邮件栈:
cd /Users/kris/code/boss
./scripts/install-server-mail.sh
当前 install-server-mail.sh 会:
- 先复用
deploy-server.sh同步代码和重启 Web - 再通过
boss-server-debugskill 包装器执行远端邮件安装 - 在服务器上安装
Postfix + Dovecot + swaks - 创建本机测试邮箱
bossmail - 配置别名
verify@boss.hyzq.net与no-reply@boss.hyzq.net - 将 Caddy 已签发的
boss.hyzq.net证书同步给邮件服务 - 安装
boss-mail-cert-sync.timer,用于后续证书轮转同步
如果需要在服务器上单独补环境:
cd /opt/boss
sudo ./scripts/bootstrap-server.sh
npm install
npm run build
sudo systemctl restart boss-web
sudo systemctl restart caddy
5. 本机 device-agent 启动
cd /Users/kris/code/boss
./scripts/start-local-agent.sh ./local-agent/config.example.json
健康检查:
- 本机 agent:
http://127.0.0.1:4317/health - 云端 web:
http://127.0.0.1:3000/api/health
6. 为什么要保留这份文档
这份文档的作用是避免 Codex 在背景信息压缩后遗忘:
- 服务器地址
- 登录用户
- 部署入口脚本
- HTTPS 的实际前提条件
- 本机 device-agent 的启动方式
7. 当前部署状态(2026-03-25)
已完成:
- 服务器
106.53.170.158已安装nodejs和caddy - 服务器已安装
Postfix、Dovecot、swaks /opt/boss已同步当前项目代码boss-web.service已启动caddy.service已启动postfix.service已启动dovecot.service已启动http://127.0.0.1:3000/api/health已返回成功http://127.0.0.1:3000/api/v1/conversations已返回新聚合数据Caddy日志中已经出现certificate obtained successfully,说明服务端证书申请链路已跑通- 邮件服务已经监听
25 / 465 / 587 / 993 - 服务器本机已通过
swaks走127.0.0.1:587 + STARTTLS + AUTH LOGIN成功发送测试邮件到verify@boss.hyzq.net - 测试邮件已经进入
/home/bossmail/Maildir boss-web已支持 email 模式,并已通过临时写入/opt/boss/.env.server做过一次真实邮件验证码投递验证
当前需要继续复核的点:
- 当前本机环境下
dig +short boss.hyzq.net仍返回198.18.1.188 - 当前本机环境下
curl -I http://boss.hyzq.net已返回308 - 当前本机环境下
curl -I https://boss.hyzq.net已返回HTTP/2 307 /auth/login - 当前本机环境下
curl https://boss.hyzq.net/api/health已返回{"ok":true,...} - 当前本机环境下
curl https://boss.hyzq.net/api/v1/conversations已返回真实聚合数据 - 当前本机环境下
nc -vz boss.hyzq.net 25 587 993已全部成功 - 服务器本机
dig +short boss.hyzq.net已返回106.53.170.158 - 服务器本机
curl --resolve boss.hyzq.net:443:127.0.0.1 https://boss.hyzq.net -I已返回307 /auth/login - 服务器本机
curl https://boss.hyzq.net/api/health已返回{"ok":true,...} - 服务器本机
curl https://boss.hyzq.net/api/v1/conversations已返回真实聚合数据
因此当前结论更新为:公网 443 已经实际可用,Caddy 配置本身没有问题,而且域名下的 Web API 已经可以直接返回健康探针和业务数据;服务器邮件栈也已经上线,公网 25 / 587 / 993 当前可达。后续如果要继续排障,重点应放在“为什么当前网络下 dig 显示的是 198.18.1.188”这个入口结构,以及邮件域名的 SPF / DKIM / DMARC / MX 收口,而不是继续假设 443 没打开