0bfc0ebe80
- 移除「文档」章节:手动归入文档站后,README 不再引用任何外部仓库地址 - 补三个可选 profile 的启动命令 - 补 Apache-2.0 LICENSE(与其余开源仓一致)
2.8 KiB
2.8 KiB
IotLCM 部署仓
IotLCM 物联网卡管理平台的部署编排与数据库初始化脚本。使用 Docker Compose 在单机上拉起完整平台。
部署内容
| 类别 | 服务 |
|---|---|
| 基础组件 | MySQL、Redis、RabbitMQ、Consul |
| 业务服务 | admin-svr(管理端后端)、admin-ui(管理端前端)、openapi(对外 API)、app-server(小程序后端)、app-web(小程序前端)、upstream-chan(运营商对接)、upstream-proxy(通道缓存转发)、worker-svr(异步任务)、sms(短信)、docs(文档站) |
| 可选 | onelink-mock(运营商接口挡板)、bot(飞书通知)、nginx(反向代理) |
快速开始
# 1. 准备环境变量
cp .env.example .env
vi .env # 填镜像仓库、各项口令
# 2. 准备配置
cp -r config.example config
vi config/*/config.yaml # 逐份填写(标注「必改」的项)
# 3. 启动
docker compose up -d
# 4. 查看状态
docker compose ps
首次启动会自动建库并导入 schema,MySQL 初始化约需 1~2 分钟。等待 iotlcm-mysql 健康后其余服务才会启动。
启动完成后访问 http://<宿主机IP>:8009,账号 admin,口令为 .env 中的 MYSQL_ADMIN_PASSWORD。
需要按需开启的可选服务:
docker compose --profile with-mock up -d # 运营商接口挡板
docker compose --profile with-bot up -d # 飞书通知
docker compose --profile with-nginx up -d # 自带反向代理
目录结构
iotlcm-deploy/
├── docker-compose.yml # 服务编排
├── .env.example # 环境变量模板 → 复制为 .env
├── config.example/ # 配置模板 → 复制为 config/
│ ├── admin-svr/
│ ├── admin-ui/
│ ├── app-server/
│ ├── bot/
│ ├── nginx/
│ ├── openapi/
│ ├── sms/
│ ├── upstream-chan/
│ ├── upstream-proxy/
│ └── worker-svr/
├── schema/ # 数据库初始化脚本(首次启动自动执行)
├── config/ # 实际配置(不入版本库)
└── data/ # 运行数据(不入版本库)
config/ 与 data/ 在 .gitignore 中,不会被提交。
重要提示
JWT_SIGNING_KEY必须在admin-svr、openapi、app-server三者间完全一致,否则令牌跨服务不通- 镜像标签不要用
latest,生产环境请固定到具体版本 - 改
schema/下的脚本不会自动生效,需要清空data/mysql重新初始化(会丢失全部数据) - 默认只监听
127.0.0.1的服务需通过反向代理对外 - 数据库初始化脚本的详细说明见
schema/README.md