# nx 上帝菜单巡检第五轮 — 部署脚本 Docker/Supervisor 分流

| 项 | 内容 |
|----|------|
| 日期 | 2026-06-06 |
| 动机 | `upgrade.sh`、`deploy-production.sh` 等仍硬编码 Supervisor + `/www/wwwroot`，Docker 1Panel 生产（`/opt/nexus`）无法正确升级 |

## 变更摘要

1. **detect_deploy_runtime.sh**（新）：共享 `resolve_nexus_root` / `detect_nexus_runtime` / `suggest_ops_cron`。
2. **upgrade.sh**：检测到 Docker Compose 栈时 `exec nexus-1panel.sh upgrade`；Supervisor 保留 venv 路径。
3. **deploy-production.sh**：SSH 远程探测运行时；Docker 走镜像重建，Supervisor 走 tar 前端 + supervisorctl。
4. **deploy-on-server.sh** / **deploy-frontend.sh**：同上自动分流。
5. **nexus-1panel.sh upgrade**：成功后若未安装 cron 则提示 `nx cron`。

## 涉及文件

- `deploy/detect_deploy_runtime.sh`
- `deploy/upgrade.sh`
- `deploy/deploy-production.sh`
- `deploy/deploy-on-server.sh`
- `deploy/deploy-frontend.sh`
- `deploy/nexus-1panel.sh`

## 迁移 / 重启

- 仅 host 脚本更新，`git pull` 即可；无需 DB 迁移。

## 验证

```bash
bash -n deploy/detect_deploy_runtime.sh deploy/upgrade.sh deploy/deploy-production.sh
# Docker 生产:
sudo bash deploy/upgrade.sh --deploy-dir /opt/nexus --check
sudo bash deploy/deploy-on-server.sh --help 2>/dev/null || true
```
