Files
iotlcm/docs/deploy/index.md
T
MiFaZhan 73adad97f3 docs: 部署手册适配一键部署,去掉环境变量与示例配置
部署仓已改为开箱即用:config/ 直接是配置文件、口令等值内置在
docker-compose.yml、不再有 .env。

同步调整:
- 概览:部署流程改为 git clone + docker compose up -d 三步
- 配置说明:重写为「编排层 + 应用层」,说明为何不用环境变量
  (GoFrame 不展开配置文件中的 ${VAR})、改口令需同步三处、
  口令不能含 @ : / 等字符
- 启动与验证:去掉准备步骤,schema 脚本数改为 13 个
- 环境准备:镜像仓库改为描述编排文件中的实际地址
- 升级备份/离线/分离/自建镜像:.env 相关操作改为修改编排文件
2026-10-29 09:20:09 +08:00

3.7 KiB

title, description, outline
title description outline
部署概览 IotLCM 平台的部署方式、构成与前置条件 deep

部署概览

IotLCM 平台通过 Docker Compose 在单机上部署。部署编排与数据库初始化脚本在独立仓库:

git clone https://git.5iot.com/iotlcm-public/iotlcm-deploy.git
cd iotlcm-deploy
iotlcm-deploy/
├── docker-compose.yml      # 服务编排(含默认口令与端口)
├── config/                 # 各服务配置,10 份,已带可用默认值
└── schema/                 # 数据库初始化脚本,13 个,首次启动自动执行

部署内容

类别 服务
基础组件 MySQL、Redis、RabbitMQ、Consul
管理端 admin-svr(后端)、admin-ui(前端)
对外接口 openapi
小程序 / H5 app-server(后端)、app-web(前端)
运营商对接 upstream-chan(协议适配)、upstream-proxy(缓存转发)
异步任务 worker-svr(批次执行、全量同步)
配套 sms(短信)、docs(本文档站)
可选 onelink-mock(运营商接口挡板)、bot(飞书通知)、nginx(反向代理)

部署流程

git clone <部署仓地址> iotlcm-deploy
cd iotlcm-deploy
docker compose up -d

三步,不需要复制或修改任何文件——配置与编排都随仓库分发且带可用默认值。首次启动自动建库并导入 schema,约 1~2 分钟。

启动后访问 http://<宿主机IP>:8009,账号 admin,口令见 docker-compose.yml。

::: warning 默认口令只用于试用 正式部署前必须修改数据库、Redis、RabbitMQ、admin 账号口令与 JWT 密钥,详见配置说明。 :::

文档导航

文档 内容
环境准备 硬件、系统、Docker 版本、镜像仓库、端口规划
配置说明 docker-compose.yml 与 config/ 各项含义
启动与验证 启动流程、验证清单、首次登录
其他部署方式 二进制、自建镜像、分离、离线
可选服务 接口挡板、飞书通知、反向代理
升级与备份 版本固定、升级回滚、数据备份
故障排查 常见问题与处理

关键约束

::: warning JWT 密钥必须三处一致 admin-svr、openapi、app-server 共用同一个 JWT_SIGNING_KEY。不一致的表现是能登录管理端,但调用外部 API 或小程序端提示未授权。

更换该值会使已签发的全部登录态与接口令牌立即失效,需在维护窗口操作。 :::

::: tip 镜像标签不要用 latest 生产环境必须把 TAG 固定到具体版本号。latest 会随仓库推送变化,同一份编排在不同时间拉到的镜像不同,出问题无法定位,也无法明确回滚。 :::

::: danger 修改 schema 脚本不会自动生效 数据库初始化只在 data/mysql 为空时执行。改了 schema/ 下的脚本必须清空数据卷才会重跑,而清空会丢失全部数据。生产环境禁止这样操作。 :::

服务端口

默认端口规划:

端口 服务 是否对外
8000 openapi 经反向代理
8008 admin-svr 经反向代理
8009 admin-ui 经反向代理
8010 app-server 经反向代理
8018 app-web 经反向代理
8019 docs 经反向代理
3306 / 6379 / 5672 / 8500 MySQL / Redis / RabbitMQ / Consul 仅内网
8110 / 8310 / 8510 upstream-chan / upstream-proxy 仅内网
11190 / 11200 sms 仅内网
8080 onelink-mock 仅联调

端口冲突时修改 docker-compose.yml 中对应变量,不要直接改 docker-compose.yml。