当前位置:   article > 正文

Thingsboard搭建本地开发环境说明_thingsboard数据库插件

thingsboard数据库插件

本地开发环境搭建说明

环境要求

前提要求

  • 项目已经可以顺利build成功

  • 当前示例为Mac,windows与Mac的配置基本一致,建议使用类linux系统

搭建第三方组件

由于是开发环境,只需要搭建单节点的zookeeper和kafka即可,redis缓存也不需要

1、 从官网下载对应的安装包并解压

  1. 下载地址
  2. https://mirror.bit.edu.cn/apache/kafka/2.5.0/kafka_2.12-2.5.0.tgz

2、 搭建单节点zookeeper

./zookeeper-server-start.sh ../config/zookeeper.properties

3、 搭建单节点kafka

./kafka-server-start.sh ../config/server.properties

搭建数据库

开发环境只需要使用到postgresql即可,不需要使用cassandra来存储时序数据,postgresql只需要单节点即可

1、 安装postgres数据库

  1. brew install postgresql

2、 安装timescale插件

  1. # Add our tap
  2. brew tap timescale/tap
  3. # To install
  4. brew install timescaledb
  5. # Post-install to move files to appropriate place
  6. /usr/local/bin/timescaledb_move.sh
  7. # Install plugin
  8. timescaledb-tune
  9. # Restart PostgreSQL instance
  10. brew services restart postgresql

3、 创建database

  1. psql -U postgres
  2. create database thingsboard;

4、 通过可视化工具连接到postgresql,并创建对应的用户,默认的用户名和密码都是postgres,可以在项目的配置文件中进行修改

5、 初始化数据库数据

  1. chomd +x {THINGSBOARD_DIR}/application/target/bin/install/install_dev_db.sh
  2. ./install_dev_db.sh

启动tb-node组件

1、 修改配置文件

  1. {THINGSBOARD_DIR}/application/src/main/resources/thingsboard.yml
  2. # enable kafka
  3. zk.enabled="${ZOOKEEPER_ENABLED:true}"
  4. # 使用pgsql作为持久换以及时间序列存储
  5. database.ts.type="${DATABASE_TS_TYPE:sql}"
  6. # 使用内存缓存
  7. cache.type="${CACHE_TYPE:caffeine}"
  8. # 使用kafka作为管道
  9. queue.type="${TB_QUEUE_TYPE:kafka}"
  10. # 禁用tb-node自带的transport功能,使用独立的服务来提供transport功能
  11. transport.http.enabled="${HTTP_ENABLED:false}"
  12. transport.mqtt.enabled="${MQTT_ENABLED:false}"
  13. transport.coap.enabled="${COAP_ENABLED:false}"
  14. # 启用独立的js引擎处理消息
  15. js.evaluator="${JS_EVALUATOR:remote}"

2、 直接通过idea的debug启动即可

  1. # 模块名称
  2. application
  3. # 主类
  4. org.thingsboard.server.ThingsboardServerApplication
  5. # 路径
  6. {THINGSBOARD_DIR}/application/src/main/java/ThingsboardServerApplication.java

启动transport组件

  • 只说明mqtt-transport如何配置,http和coap的配置类似

1、修改配置文件

  1. {THINGSBOARD_DIR}/transport/mqtt/src/main/resources/thingsboard.yml
  2. queue.type="${TB_QUEUE_TYPE:kafka}"

2、 启动服务

  1. # 模块名称
  2. transport.mqtt
  3. # 主类
  4. org.thingsboard.server.mqtt.ThingsboardMqttTransportApplication
  5. # 路径
  6. {THINGSBOARD_DIR}/transport/mqtt/src/main/java/ThingsboardMqttTransportApplication.java

启动ui-web组件

1、 build项目

  1. cd {THINGSBOARD_DIR}/ui-ngx
  2. # 清除缓存
  3. npm cache clean --force
  4. # 手动安装必要模块
  5. npm install --save-dev prettier
  6. # 安装模块
  7. npm install

2、 启动项目

npm start

启动js-executor

1、 build项目

  1. cd {THINGSBOARD_DIR}/msa/js-executor
  2. npm install

2、 启动项目

npm install

连通性测试

1、 登录web localhost:4200

2、 创建一个设备

3、 获取token

4、 使用mqttclient连接到mqtt-transport确认是否可以正常连接上

作者:哦呵呵_3579
链接:https://www.jianshu.com/p/8e8458699aa4
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/638752
推荐阅读
相关标签
  

闽ICP备14008679号