Docker 单机版 IoTDB 部署准备

确保系统已安装 Docker 环境。官方推荐使用 Docker 版本 20.10 或更高,可通过以下命令验证安装状态:

docker --version

下载最新版 Apache IoTDB 镜像:

docker pull apache/iotdb:latest

容器启动与端口映射

通过以下命令启动容器,并映射默认端口(6667 为 RPC 端口,31999 为 JMX 端口):

docker run -d \
  -p 6667:6667 \
  -p 31999:31999 \
  --name iotdb_instance \
  apache/iotdb:latest

如需自定义数据存储路径,需挂载本地目录到容器内:

docker run -d \
  -v /path/to/local/data:/iotdb/data \
  -v /path/to/local/logs:/iotdb/logs \
  -p 6667:6667 \
  --name iotdb_custom \
  apache/iotdb:latest

外部访问配置验证

检查容器运行状态:

docker ps -a

通过客户端工具测试连接(以 Cli 工具为例):

docker exec -it iotdb_instance /iotdb/sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root

若需从外部网络访问,需确保防火墙开放对应端口:

sudo ufw allow 6667/tcp
sudo ufw reload

高级网络配置

使用自定义桥接网络提升隔离性:

docker network create iotdb_network
docker run -d \
  --network=iotdb_network \
  -p 6667:6667 \
  --name iotdb_isolated \
  apache/iotdb:latest

配置多实例端口区分:

docker run -d \
  -p 6668:6667 \
  --name iotdb_instance2 \
  apache/iotdb:latest

故障排查方法

查看容器日志定位启动问题:

docker logs iotdb_instance

检查端口占用情况:

netstat -tulnp | grep 6667

验证端口可达性:

telnet your_server_ip 6667

常用管理命令

停止并删除容器:

docker stop iotdb_instance && docker rm iotdb_instance

更新到新版本镜像:

docker pull apache/iotdb:new_version
docker run ... # 使用新版本重新部署

备份数据目录:

docker cp iotdb_instance:/iotdb/data /backup/iotdb_data

更多推荐