XuqmGroup私有化部署仓库
转到文件
徐勤民 de95af8e9f fix(deploy): 解决一键更新后nginx服务停止问题
- 添加检查nginx运行状态逻辑
- 在nginx未运行时自动启动服务
- 防止因--remove-orphans时序问题导致的nginx停止
- 确保部署完成后nginx正常运行
2026-05-23 03:52:07 +08:00
config feat(nginx): 更新系统接口配置支持一键更新和重置功能 2026-05-22 16:49:42 +08:00
data chore: scaffold private deployment repository 2026-05-18 19:49:31 +08:00
docs docs: 整理全量文档 2026-05-21 11:48:45 +08:00
logs chore: scaffold private deployment repository 2026-05-18 19:49:31 +08:00
scripts fix(deploy): 解决一键更新后nginx服务停止问题 2026-05-23 03:52:07 +08:00
templates chore: scaffold private deployment repository 2026-05-18 19:49:31 +08:00
.env.example feat: docker.sock 挂载 + PRIVATE_DEPLOY_ROOT 支持一键更新 2026-05-21 14:47:18 +08:00
.gitignore chore: scaffold private deployment repository 2026-05-18 19:49:31 +08:00
CHANGELOG.md fix(deploy): 补齐 LICENSE_PUBLIC_BASE_URL,修复私有化 license 文件域名错误 2026-05-21 15:25:25 +08:00
docker-compose.infra.yml feat: 一键安装向导 + 交互式租户初始化 2026-05-19 14:29:57 +08:00
docker-compose.yml fix(deploy): inject FILE_BASE_URL and FILE_SERVICE_INTERNAL_URL into update-service 2026-05-22 16:03:21 +08:00
image-manifest.json release: 2026.05.21-private.2 2026-05-21 13:00:16 +08:00
install.sh feat(deploy): 移除 ops-web、修复 SDK URL 注入、新增一键升级 2026-05-20 18:25:12 +08:00
README.md docs: 整理全量文档 2026-05-21 11:48:45 +08:00
upgrade.sh feat(deploy): 移除 ops-web、修复 SDK URL 注入、新增一键升级 2026-05-20 18:25:12 +08:00
VERSION release: 2026.05.21-private.2 2026-05-21 13:00:16 +08:00

XuqmGroup 私有化部署

快速开始

首次部署

curl -fsSL https://xuqinmin.com/xuqmGroup/XuqmGroup-PrivateDeploy/raw/branch/main/install.sh \
  -o install.sh && bash install.sh

交互式向导依次完成:依赖检测 → 配置生成 → 镜像拉取 → 容器启动 → 租户初始化 → 全量验证。

升级已有部署

curl -fsSL https://xuqinmin.com/xuqmGroup/XuqmGroup-PrivateDeploy/raw/branch/main/upgrade.sh \
  -o upgrade.sh && bash upgrade.sh

保留全部数据和配置,自动修复已知配置问题,可选拉取新镜像,完成后运行全量验证。

容器异常重置

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 恢复备份

部署架构

上层 nginx任意层级,HTTPS / 域名)
    │
    └── 本机 IP:80  内置 nginx 容器(统一入口)
            │
            ├── 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     (厂商回调,按需)

内置 nginx 容器直接绑定宿主机 0.0.0.0:80宿主机无需配置 nginx,上层 nginx 直接 proxy_pass 到本机 IP 即可。各业务容器11224–11231绑定 127.0.0.1,仅用于本地调试。


租户初始化方式

安装脚本启动后交互式选择:

  • 新建租户:填写邮箱、用户名、密码,首次启动自动创建
  • 迁移租户:在公有化平台安全中心生成迁移密钥(pmk_ 开头),粘贴后自动完成导入

服务说明

Profile 服务 说明
base tenant-service, file-service, tenant-web, nginx 必选核心服务(含内置路由 nginx
infra-mysql mysql 托管数据库
infra-redis redis 托管缓存
im im-service IM HTTP + WebSocket
push push-service 厂商推送
update update-service 版本管理 + RN 热更新
license license-service License 校验
# 后期启用 / 禁用可选服务
bash scripts/enable-service.sh im
bash scripts/disable-service.sh im

注意事项

  • 上层 nginx 每一层都必须透传 Upgrade / Connection 头,否则 IM WebSocket 会断开,详见 docs/runbook.md
  • 宿主机本身无需配置 nginx

文档