Docker 部署(TKE)
TKE(ThinkLink Enterprise)是 ThinkLink 的私有化部署版本,使用 Docker Compose 运行。对于能够访问互联网的 Linux 服务器,推荐使用官方一键安装脚本。
1. 安装要求
| 项目 | 要求 |
|---|---|
| 权限 | root 权限(安装命令使用 sudo) |
| CPU | x86_64 / amd64,至少 2 核;暂不支持 ARM |
| 内存 | 至少 4 GiB |
| 磁盘 | /opt 所在文件系统至少 20 GiB 可用空间 |
| 网络 | 能够通过 HTTPS 访问 package.think-link.net |
| 系统支持级别 | 发行版 | Docker 要求 |
|---|---|---|
| 自动安装 | Debian 11/12/13、Ubuntu 22、Rocky/AlmaLinux 9 | 安装器可自动安装 Docker |
| 兼容模式 | Ubuntu 20、CentOS 7/8 | 必须预装 Docker Engine 和 Docker Compose V2 |
2. 开放端口
在云安全组和服务器防火墙中按实际使用范围开放以下端口:
| 端口 | 协议 | 用途 |
|---|---|---|
| 80 | TCP | ThinkLink Web 管理界面;若已占用,安装器可交互选择 8080 |
| 1883 | TCP | MQTT |
| 8083 | TCP | MQTT over WebSocket |
| 8084 | TCP | MQTT over Secure WebSocket |
| 18083 | TCP | EMQX 管理界面 |
| 1700 | UDP | LoRaWAN GWMP 网关接入 |
PostgreSQL 的 5432 和 Redis 的 6379 仅供容器内部使用,不需要对公网开放。安装器不负责配置 HTTPS;如需公网 HTTPS,请另外配置反向代理和证书。
3. 一键安装
在服务器终端执行:
bash
curl --tlsv1.2 --tls-max 1.2 -fsSL https://package.think-link.net/install.sh | sudo bash该命令不需要额外参数。安装器会依次:
- 检测操作系统、CPU、内存、磁盘和所需端口。
- 在支持的系统上安装 Docker;已有可用 Docker 时直接复用。
- 从 ThinkLink 官方软件包服务下载当前稳定版应用、Compose 文件和容器镜像。
- 将文件安装到
/opt/thinklink,加载镜像并执行docker compose up -d。 - 检查服务健康状态,并写入版本和访问信息。
如果 80 端口已被其他服务占用,安装器会在终端询问是否改用 8080。它不会停止或修改占用该端口的原有服务。
4. 查看结果并登录
安装完成后,终端会显示平台地址、EMQX 地址、MQTT Broker 和 GWMP 地址。相同信息和初始凭据会保存在:
text
/opt/thinklink/install-info.txt该文件仅允许 root 读取。请使用其中显示的平台地址登录,并在首次登录后立即修改初始密码。
默认情况下访问:
text
http://<服务器IP>如果安装时选择了备用 Web 端口,则访问:
text
http://<服务器IP>:8080登录后需要创建或加入组织,才能开始配置网关和设备。
5. 验证与排障
查看容器状态:
bash
sudo docker compose -f /opt/thinklink/docker-compose.yml ps查看某个服务的日志:
bash
sudo docker compose -f /opt/thinklink/docker-compose.yml logs <服务名>常见安装失败原因包括:
- 服务器不是 amd64/x86_64 架构。
- CPU、内存或
/opt可用空间不足。 - 兼容模式系统未预装 Docker Engine 和 Compose V2。
- 端口已占用,且没有选择可用的替代端口。
- 服务器无法访问官方软件包地址,或下载过程被代理、防火墙中断。
当前一键脚本是联网安装入口,不接受离线包参数。离线或受控网络部署请向 ThinkLink 获取与当前版本匹配的交付包和操作说明,不要继续使用旧版仓库或历史网盘镜像。
6. 与云平台协同使用
同一 LoRaWAN 设备档案不要同时在两个平台上启用。若 TKE 和云平台同时响应 Join 或 Confirm 消息,可能产生入网失败和下行冲突。切换平台时,应在不使用的平台禁用或删除对应设备档案。