2026-05-20 16:06:42 +08:00
|
|
|
|
# XuqmGroup 私有化部署
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
|
|
|
|
|
## 快速开始
|
|
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
### 首次部署
|
2026-05-20 18:25:12 +08:00
|
|
|
|
|
2026-05-18 19:49:31 +08:00
|
|
|
|
```bash
|
2026-05-20 16:06:42 +08:00
|
|
|
|
curl -fsSL https://xuqinmin.com/xuqmGroup/XuqmGroup-PrivateDeploy/raw/branch/main/install.sh \
|
|
|
|
|
|
-o install.sh && bash install.sh
|
2026-05-18 19:49:31 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
交互式向导依次完成:依赖检测 → 配置生成 → 镜像拉取 → 容器启动 → 租户初始化 → 全量验证。
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
### 升级已有部署
|
2026-05-20 18:25:12 +08:00
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
curl -fsSL https://xuqinmin.com/xuqmGroup/XuqmGroup-PrivateDeploy/raw/branch/main/upgrade.sh \
|
|
|
|
|
|
-o upgrade.sh && bash upgrade.sh
|
|
|
|
|
|
```
|
|
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
保留全部数据和配置,自动修复已知配置问题,可选拉取新镜像,完成后运行全量验证。
|
2026-05-20 18:25:12 +08:00
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
### 容器异常重置
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
bash scripts/reset.sh
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
适用于:nginx 502、服务 crash-loop、密码注入错误、升级后镜像未生效。保留数据和配置,彻底重建所有容器。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 脚本说明
|
|
|
|
|
|
|
|
|
|
|
|
| 脚本 | 适用场景 |
|
|
|
|
|
|
|------|---------|
|
|
|
|
|
|
| `install.sh` | 全新服务器首次部署;或彻底清除数据重装 |
|
|
|
|
|
|
| `upgrade.sh` | 保留数据,更新部署脚本和镜像(推荐日常升级方式) |
|
|
|
|
|
|
| `scripts/reset.sh` | 保留数据,容器状态异常时快速重建恢复 |
|
|
|
|
|
|
| `scripts/update.sh` | 在安装目录内执行的局部升级(由 upgrade.sh 调用) |
|
|
|
|
|
|
| `scripts/verify.sh` | 随时重新运行全量验证 |
|
|
|
|
|
|
| `scripts/backup.sh` | 备份数据 |
|
|
|
|
|
|
| `scripts/restore.sh` | 恢复备份 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-20 16:06:42 +08:00
|
|
|
|
## 部署架构
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
|
|
|
|
|
```
|
2026-05-21 11:48:45 +08:00
|
|
|
|
上层 nginx(任意层级,HTTPS / 域名)
|
2026-05-20 16:06:42 +08:00
|
|
|
|
│
|
2026-05-21 11:48:45 +08:00
|
|
|
|
└── 本机 IP:80 内置 nginx 容器(统一入口)
|
2026-05-20 16:35:27 +08:00
|
|
|
|
│
|
|
|
|
|
|
├── tenant-service /api/ /actuator/
|
|
|
|
|
|
├── file-service /file/
|
|
|
|
|
|
├── tenant-web /(兜底)
|
|
|
|
|
|
├── im-service /api/im/ /ws/im
|
|
|
|
|
|
├── update-service /api/v1/updates/ /api/v1/rn/
|
|
|
|
|
|
├── license-service /api/license/
|
|
|
|
|
|
└── push-service (厂商回调,按需)
|
2026-05-18 19:49:31 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
内置 nginx 容器直接绑定宿主机 `0.0.0.0:80`,**宿主机无需配置 nginx**,上层 nginx 直接 proxy_pass 到本机 IP 即可。各业务容器(11224–11231)绑定 `127.0.0.1`,仅用于本地调试。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-20 16:06:42 +08:00
|
|
|
|
## 租户初始化方式
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-20 16:06:42 +08:00
|
|
|
|
安装脚本启动后交互式选择:
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-20 16:06:42 +08:00
|
|
|
|
- **新建租户**:填写邮箱、用户名、密码,首次启动自动创建
|
|
|
|
|
|
- **迁移租户**:在公有化平台安全中心生成迁移密钥(`pmk_` 开头),粘贴后自动完成导入
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
---
|
|
|
|
|
|
|
2026-05-20 16:06:42 +08:00
|
|
|
|
## 服务说明
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-20 16:06:42 +08:00
|
|
|
|
| Profile | 服务 | 说明 |
|
|
|
|
|
|
|---------|------|------|
|
2026-05-20 18:25:12 +08:00
|
|
|
|
| base | tenant-service, file-service, tenant-web, nginx | 必选核心服务(含内置路由 nginx) |
|
2026-05-20 16:06:42 +08:00
|
|
|
|
| infra-mysql | mysql | 托管数据库 |
|
|
|
|
|
|
| infra-redis | redis | 托管缓存 |
|
|
|
|
|
|
| im | im-service | IM HTTP + WebSocket |
|
|
|
|
|
|
| push | push-service | 厂商推送 |
|
|
|
|
|
|
| update | update-service | 版本管理 + RN 热更新 |
|
|
|
|
|
|
| license | license-service | License 校验 |
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-19 08:01:19 +08:00
|
|
|
|
```bash
|
2026-05-21 11:48:45 +08:00
|
|
|
|
# 后期启用 / 禁用可选服务
|
|
|
|
|
|
bash scripts/enable-service.sh im
|
|
|
|
|
|
bash scripts/disable-service.sh im
|
2026-05-19 08:01:19 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
---
|
|
|
|
|
|
|
2026-05-19 08:01:19 +08:00
|
|
|
|
## 注意事项
|
|
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
- 上层 nginx 每一层都必须透传 `Upgrade` / `Connection` 头,否则 IM WebSocket 会断开,详见 [docs/runbook.md](docs/runbook.md)
|
2026-05-20 17:15:53 +08:00
|
|
|
|
- 宿主机本身无需配置 nginx
|
2026-05-19 08:01:19 +08:00
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
---
|
|
|
|
|
|
|
2026-05-20 16:06:42 +08:00
|
|
|
|
## 文档
|
2026-05-18 19:49:31 +08:00
|
|
|
|
|
2026-05-21 11:48:45 +08:00
|
|
|
|
- [运行手册](docs/runbook.md) — 完整部署流程、nginx 配置、故障排查、常用运维命令
|
2026-05-20 16:06:42 +08:00
|
|
|
|
- [配置说明](docs/configuration.md) — 各配置文件字段说明
|
|
|
|
|
|
- [验收清单](docs/acceptance-checklist.md) — 交付验收检查项
|
2026-05-21 11:48:45 +08:00
|
|
|
|
- [部署信息记录模板](docs/deployment-defaults.md) — 填写后交付客户存档
|