私有化部署默认信息
本文档记录数字医信私有化部署的默认配置,供运维和对接人员参考。
部署信息
| 项目 |
值 |
| 部署版本 |
2026.05.19-private.1 |
| 部署主机 |
192.168.116.9 |
| 部署目录 |
/opt/xuqm-private |
| 部署时间 |
2026-05-19 |
访问地址
说明:采用纯 IP 部署,无需配置域名。局域网内任意机器均可通过上述地址访问完整功能。
租户信息
| 项目 |
值 |
| 租户名称 |
数字医信 |
| 登录邮箱 |
szyx@bjca.org.cn |
| 登录用户名 |
szyx |
| 初始密码 |
与公有化平台相同(迁移时未重置) |
| 迁移来源 |
公有化平台(39.107.53.187) |
应用列表
| 应用名称 |
App Key |
| 医网信 |
ak_c6fce237cae94ef5ab71fda6 |
| 临床知识库 |
ak_1178fd37b8f54cefb7031744 |
服务列表和端口
对外服务(通过 nginx 统一入口)
| 服务名 |
内部端口 |
nginx 路由路径 |
说明 |
| tenant-service |
9001 |
/api/* /actuator/* |
核心 API,认证、租户、SDK 配置 |
| file-service |
8086 |
/file/* |
文件上传下载,最大 500MB |
| im-service |
8082 |
/api/im/* /ws/im/* |
IM HTTP API 和 WebSocket |
| update-service |
8084 |
/api/v1/updates/* /api/v1/rn/* |
APP 版本管理和 RN 热更新 |
| license-service |
8085 |
内部调用 |
License 有效期校验 |
| push-service |
8083 |
内部调用 |
厂商推送通知 |
| docs-site |
80 |
/docs/* |
私有化 SDK 文档站 |
| ops-web |
80 |
/ops |
运营后台前端 |
| tenant-web |
80 |
/ |
控制台前端(兜底路由) |
基础设施(Docker 内部,不对外暴露)
| 服务名 |
内部端口 |
模式 |
说明 |
| mysql |
3306 |
managed |
MySQL 8.4,Docker 容器托管 |
| redis |
6379 |
managed |
Redis 7.4,AOF 持久化 |
Docker Compose Profiles
| Profile |
包含服务 |
说明 |
| base |
tenant-service, file-service, tenant-web, ops-web, docs-site, nginx |
必选核心服务 |
| infra-mysql |
mysql |
托管数据库(MYSQL_MODE=managed 时启用) |
| infra-redis |
redis |
托管缓存(REDIS_MODE=managed 时启用) |
| im |
im-service |
IM 服务(可选) |
| push |
push-service |
推送服务(可选) |
| update |
update-service |
版本管理服务(可选) |
| license |
license-service |
License 服务(可选) |
当前启用的 Profiles:base,infra-mysql,infra-redis,im,push,update,license(全量部署)
数据库
| 项目 |
值 |
| 主机 |
mysql(Docker 服务名) |
| 端口 |
3306 |
| 数据库名 |
xuqm_private |
| 业务账号 |
xuqm |
| 业务密码 |
XuqmMysql@2026 |
| Root 密码 |
XuqmRoot@2026 |
| 字符集 |
utf8mb4 / utf8mb4_unicode_ci |
| 时区 |
+08:00 |
Redis
| 项目 |
值 |
| 主机 |
redis(Docker 服务名) |
| 端口 |
6379 |
| 数据库 |
0 |
| 密码 |
XuqmRedis@2026 |
| 持久化 |
AOF(appendonly yes) |
数据目录
| 路径 |
说明 |
./data/mysql/ |
MySQL 数据文件(重启后保留) |
./data/redis/ |
Redis AOF 文件(重启后保留) |
./data/uploads/ |
文件服务上传目录 |
./data/update/ |
版本管理包存储目录 |
./data/backups/ |
迁移备份 |
./logs/ |
审计日志 |
./.deploy-state/ |
部署状态和验证结果 |
配置文件清单
| 文件 |
说明 |
.env |
主配置文件(COMPOSE_PROFILES、域名、功能开关) |
config/secrets.env |
敏感凭据(chmod 600) |
config/xuqm.env |
业务服务容器内配置 |
config/tenant/bootstrap.env |
初始租户配置(迁移后由真实数据替换) |
config/nginx/conf.d/xuqm.conf |
Nginx 路由配置 |
config/sdk/xuqm-private-sdk.json |
SDK 初始化配置文件 |
config/docs/docs-runtime.json |
文档站运行时配置 |
config/vendors/push.env |
推送厂商凭据(默认全部关闭) |
config/vendors/store-submit.env |
应用市场发布凭据(默认全部关闭) |
config/mail/smtp.env |
邮件服务配置 |
常用运维命令
# 进入部署目录
cd /opt/xuqm-private
# 查看所有容器状态
docker compose -f docker-compose.yml -f docker-compose.infra.yml ps
# 查看某个服务日志
docker compose -f docker-compose.yml -f docker-compose.infra.yml logs --tail 100 tenant-service
# 运行一键验证
bash scripts/verify.sh
# 重新部署(幂等)
DEPLOY_HOST=192.168.116.9 bash scripts/deploy-szyx.sh
# 手动迁移租户
bash scripts/migrate-tenant.sh \
--src-host 39.107.53.187 \
--src-user xuqm \
--src-password Xuqm@2026 \
--src-db xuqm_tenant \
--tenant szyx@bjca.org.cn
# 停止所有服务(保留数据)
docker compose -f docker-compose.yml -f docker-compose.infra.yml down
# 停止并清除所有数据(!不可恢复)
docker compose -f docker-compose.yml -f docker-compose.infra.yml down -v
验证结果
验证报告保存在 .deploy-state/last-verify.json,包含所有检查项的 PASS / WARN / FAIL 状态。
详细验证步骤见 docs/acceptance-checklist.md。
注意事项
- 注册功能已禁用:
TENANT_REGISTER_ENABLED=false,任何人都无法自行注册账号,只能用迁移的账号登录。
- 纯 IP 部署:所有服务通过
http://192.168.116.9 访问,如需 HTTPS,请配置 SSL 证书并修改 nginx 配置(见 docs/runbook.md)。
- 数据持久化:MySQL 和 Redis 数据存储在宿主机
./data/ 目录,容器重启不丢失。重装需手动清除。
- 推送服务:push-service 已启动,但各厂商推送默认关闭,需在
config/vendors/push.env 填写凭据并重启。
- 中文字符集:所有服务使用 utf8mb4,JDBC 连接串包含
characterEncoding=UTF-8,中文数据正常存储。