Skip to content

Docker 部署(TKE)

TKE(ThinkLink Enterprise)是 ThinkLink 的私有化部署版本,使用 Docker Compose 运行。对于能够访问互联网的 Linux 服务器,推荐使用官方一键安装脚本。

1. 安装要求

项目要求
权限root 权限(安装命令使用 sudo
CPUx86_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. 开放端口

在云安全组和服务器防火墙中按实际使用范围开放以下端口:

端口协议用途
80TCPThinkLink Web 管理界面;若已占用,安装器可交互选择 8080
1883TCPMQTT
8083TCPMQTT over WebSocket
8084TCPMQTT over Secure WebSocket
18083TCPEMQX 管理界面
1700UDPLoRaWAN 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

该命令不需要额外参数。安装器会依次:

  1. 检测操作系统、CPU、内存、磁盘和所需端口。
  2. 在支持的系统上安装 Docker;已有可用 Docker 时直接复用。
  3. 从 ThinkLink 官方软件包服务下载当前稳定版应用、Compose 文件和容器镜像。
  4. 将文件安装到 /opt/thinklink,加载镜像并执行 docker compose up -d
  5. 检查服务健康状态,并写入版本和访问信息。

如果 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 消息,可能产生入网失败和下行冲突。切换平台时,应在不使用的平台禁用或删除对应设备档案。