f7cab5ad5c
mirror-to-gitee / mirror (push) Successful in 14s
把原来 12 个独立仓合并为单仓多服务结构,各仓完整提交历史通过
read-tree 并入保留(137 个提交,blame 可追溯)。
目录:
admin-svr/ admin-ui/ app/{server,app}/ openapi/ worker-svr/
upstream-chan/ upstream-proxy/ sms/ bot/ docs/ onelink-mock/ deploy/
同时:
- 新增根 README(目录说明、快速开始、源码构建、镜像发布、许可)
- 新增根 Makefile(make build / test / images / docs)
- 新增根 .gitattributes / .gitignore,删掉 12 份重复的 Apache LICENSE
(admin-ui/ 与 app/app/ 的 MIT 上游许可保留)
- 各服务的 .gitea/workflows 收敛到仓根:trigger-jenkins.yml(tag 构建全部
服务)+ mirror-to-gitee.yml(自动建 Gitee 仓后镜像)
- 文档内跨仓绝对链接改为仓内相对路径;部署/构建文档改为单仓路径
3.9 KiB
3.9 KiB
iotLCM —— 物联网卡全生命周期管理平台(开源版)
一站式物联网 SIM 卡管理平台:卡片从运营商渠道入库 → 划拨给代理商 → 激活 / 续费 / 停机 → 流量与状态同步 → 销户。对接中国移动 OneLink、中国电信 5G CMP、中国联通 10646 等运营商接口,并通过共享 Token 模式接入多家三方渠道商。
单仓多服务:平台全部后端服务、前端应用、文档站与部署编排都在本仓,一次 clone 即可获得完整源码。
目录
| 目录 | 说明 | 镜像 |
|---|---|---|
admin-svr/ |
管理端后端(GoFrame):卡信息、通信管理、资费、告警工单、统计、账号治理 | iotlcm-admin-svr |
admin-ui/ |
管理端前端(Vue 3 + Vben Admin) | iotlcm-admin-ui |
openapi/ |
对外 API 网关:V3 接口、旧版兼容、运营商能力代理 | iotlcm-openapi |
worker-svr/ |
异步执行:RabbitMQ 消费者、全量同步、批量任务 | iotlcm-worker-svr |
upstream-chan/ |
运营商 / 三方渠道对接层(OneLink、CMP、10646、共享 Token) | iotlcm-upstream-chan |
upstream-proxy/ |
通道缓存转发层(挡在 chan 前面的本地缓存) | iotlcm-upstream-proxy |
app/server/ |
用户端服务(GoFrame) | iotlcm-app-server |
app/app/ |
用户端前端(uni-app,基于 unibest,MIT) | iotlcm-app-web |
sms/ |
短信 HTTP / gRPC 服务(阿里云、腾讯云) | iotlcm-sms |
bot/ |
飞书通知机器人(运维自用,可选) | iotlcm-bot |
docs/ |
文档站(VitePress):使用手册 + OpenAPI 合同 + 部署手册 | iotlcm-docs |
onelink-mock/ |
OneLink 接口挡板(联调 / 演示,可选) | iotlcm-onelink-mock |
deploy/ |
Docker Compose 编排与数据库初始化 | 参考 deploy/README.md |
每个子目录都有自己的 README.md,说明该服务的职责、配置项与本地运行方式。
快速开始(只跑起来)
不需要编译,直接用预构建镜像拉起整栈:
git clone <本仓库地址> iotlcm
cd iotlcm/deploy
docker compose up -d
首次启动自动完成 MySQL 建库建表(95 张)、种子数据导入、时序库建表,实测 30 秒 ~ 1 分钟。
默认账号 admin,口令见 deploy/README.md(正式使用前必须修改)。详细的端口、配置项、可选服务(挡板 / 飞书通知 / 反向代理)、离线部署与排错,见 deploy/README.md 与文档站 docs/deploy/。
对外端口默认只监听
127.0.0.1,需要局域网或公网访问时,用deploy/里的 nginx 编排改绑定地址,或并入宿主机已有的反向代理。
从源码构建
每个 Go 服务是独立模块(各自带 go.mod),在对应目录内构建:
cd worker-svr && go build -o out/ . # 其它 Go 服务同理
前端:
cd admin-ui/vue && pnpm install && pnpm build
cd app/app && pnpm install && pnpm build
cd docs && npm ci && npm run build
或一键编译检查全部 Go 模块:
make build # 所有 Go 服务编译
make images # 本地构建全部镜像
构建镜像所需的 Dockerfile 位置与构建上下文,见 docs/docs/deploy/build-image.md。
发布与镜像
所有镜像发布到同一个镜像仓库,用 tag 区分服务与版本:
<镜像仓库>/iotlcm/iotlcm:iotlcm-worker-svr-v1.0.4
└─ 仓库 ┘ └─ 服务名 ─┘└版本┘
打 v* tag 会经由内网 CI 构建全部镜像并推送,见 .gitea/workflows/。
许可
本仓整体采用 Apache License 2.0。
以下子目录基于上游 MIT 项目衍生,保留其原始许可:
| 目录 | 上游 | 许可 |
|---|---|---|
admin-ui/ |
Vben Admin | MIT,见 admin-ui/LICENSE |
app/app/ |
unibest | MIT,见 app/app/LICENSE |