Files
iotlcm/docs/01-环境准备.md
T
MiFaZhan 503fe59fe7 docs: 部署文档
- README:项目概览、快速开始、目录结构、重要提示
- 01 环境准备:硬件/系统/Docker 版本、镜像仓库、端口、防火墙、可选外部服务
- 02 配置说明:.env 必填与可选项、10 份应用配置逐项说明、启动前自检
- 03 启动与验证:首次初始化流程、状态检查、6 步验证清单、首次登录必做项
- 04 可选服务:挡板 onelink-mock、飞书 bot、自带 nginx(含 HTTPS)、组合启动
- 05 升级与备份:版本固定、升级回滚、备份脚本与恢复、日志清理、监控指标
- 06 故障排查:启动/功能/性能/网络四类共 20 个问题
2026-10-28 13:54:39 +08:00

3.7 KiB
Raw Blame History

环境准备

硬件要求

按数据规模选择配置:

场景 CPU 内存 磁盘 说明
试用 / 演示 2 核 4 GB 40 GB 少量卡片,关闭定时任务
生产(中小规模) 4 核 8 GB 200 GB 万级卡片,开启全量同步
生产(大规模) 8 核+ 16 GB+ 500 GB+ 十万级卡片,建议数据库独立部署

磁盘估算:MySQL 数据约为卡片数的 1~2 KB/张;日志按每日同步任务量增长,建议单独挂载并配置轮转。

内存分配参考(生产 8 GB 场景):

服务 大致占用
MySQL 1~2 GB
Redis 200~500 MB
RabbitMQ 300~500 MB
worker-svr 500 MB~1 GB(与并发同步的卡片数相关)
其余业务服务 每个 100~200 MB

系统要求

项 要求
操作系统 Linux x86_64(CentOS 7+ / Ubuntu 20.04+ / Debian 11+)
内核 3.10 以上
文件系统 ext4 / xfs
时区 建议设为 Asia/Shanghai,与 .env 中的 TZ 保持一致

Docker 要求

组件 最低版本 说明
Docker Engine 20.10 需要支持 healthcheck 与 profiles
Docker Compose v2.0(插件版) docker compose 而非 docker-compose

验证:

docker version
docker compose version

docker compose version 输出的版本号需 ≥ v2.0。若只有 docker-compose(v1),请升级到 Compose V2 插件。

镜像仓库

平台镜像由官方镜像仓库分发,需要:

  1. 能访问镜像仓库地址(内网仓库需先配置网络或代理)
  2. 具备拉取权限(私有仓库需先登录)
docker login <你的镜像仓库地址>

.env 中的 REGISTRY 填写仓库地址(不含 https:// 与末尾斜杠):

REGISTRY=registry.example.com

基础组件从 <REGISTRY>/library/ 拉取(mysql、redis、rabbitmq、consul、nginx),业务镜像从 <REGISTRY>/iotlcm/ 拉取。

端口

默认占用的宿主机端口:

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

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

防火墙

仅需对外开放反向代理端口(默认 80/443)。其余服务端口应限制为内网访问:

# 示例:firewalld 仅放行 80/443
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

依赖外部服务(可选)

服务 用途 是否必需
TDengine 3.x 存流量历史数据 可选。不配置则历史流量查询不可用
短信服务商 发送验证码 可选。不配置则无法发送短信
微信支付 在线支付 可选。不配置则支付功能不可用
飞书 运维通知 可选。不配置则不启动 bot

TDengine 需开启 WebSocket 接口(默认 6041 端口),在 .env 中配置:

TDENGINE_HOST=tdengine.example.com
TDENGINE_PORT=6041
TDENGINE_USER=root
TDENGINE_PASSWORD=
TDENGINE_DAILY_DB=iotlcm_daily
TDENGINE_MONTHLY_DB=iotlcm_monthly

不使用时全部留空即可,主流程不受影响。