TDengine Docker 部署与集群配置实战指南

1. TDengine与Docker部署概述

TDengine是一款开源的时序数据库(Time-Series Database),专为物联网、车联网、工业互联网等场景设计。它采用分布式架构,支持水平扩展,能够高效处理海量时序数据的写入和查询。相比传统关系型数据库,TDengine在存储效率、查询性能和压缩比方面有明显优势。

为什么选择Docker部署TDengine?Docker容器化部署有以下几个显著优势:

  • 环境一致性:避免"在我机器上能跑"的问题,确保开发、测试、生产环境一致
  • 快速部署:一条命令即可完成安装,无需处理复杂的依赖关系
  • 资源隔离:容器之间相互隔离,不会互相影响
  • 便捷管理:使用docker-compose可以轻松管理多节点集群

在开始之前,你需要确保:

  1. 已安装Docker引擎(建议版本20.10+)
  2. 系统至少有4GB可用内存(集群部署需要更多)
  3. 磁盘空间充足(建议预留10GB以上空间)

2. 单机版TDengine部署

2.1 拉取官方镜像

TDengine官方提供了Docker镜像,我们可以直接拉取最新版本:

docker pull tdengine/tdengine:latest

如果想使用特定版本(如3.0.4.0),可以指定标签:

docker pull tdengine/tdengine:3.0.4.0

2.2 运行TDengine容器

基础运行命令如下:

docker run -d \
  --name tdengine \
  -p 6030:6030 \
  -p 6041:6041 \
  -p 6043-6049:6043-6049 \
  -p 6043-6049:6043-6049/udp \
  tdengine/tdengine

端口说明:

  • 6030:TDengine默认服务端口
  • 6041:RESTful接口端口
  • 6043-6049:为第三方应用提供的服务端口

2.3 数据持久化配置

为了防止容器重启后数据丢失,我们需要将数据目录挂载到宿主机:

docker run -d \
  -v /path/to/taos/data:/var/lib/taos \
  -v /path/to/taos/log:/var/log/taos \
  -p 6030:6030 \
  -p 6041:6041 \
  tdengine/tdengine

2.4 验证安装

检查容器是否正常运行:

docker ps | grep tdengine

进入容器并连接TDengine:

docker exec -it tdengine bash
taos

在taos shell中执行简单查询验证:

show databases;

3. 使用docker-compose部署TDengine集群

3.1 集群架构设计

一个典型的TDengine集群包含以下组件:

  • 多个数据节点(dnode)
  • 管理节点(mnode)
  • 仲裁节点(arbitrator,可选但推荐)

建议生产环境至少部署3个节点以保证高可用性。

3.2 docker-compose文件配置

创建docker-compose.yml文件:

version: "3"
services:
  td-node1:
    image: tdengine/tdengine:latest
    hostname: td-node1
    environment:
      TAOS_FQDN: "td-node1"
      TAOS_FIRST_EP: "td-node1"
      TAOS_NUM_OF_MNODES: 3
      TAOS_REPLICA: 3
    volumes:
      - ./data/node1:/var/lib/taos
      - ./log/node1:/var/log/taos
    ports:
      - "6030:6030"
      - "6041:6041"

  td-node2:
    i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值