Thingsboard本地源码部署并初始化数据库

本章将介绍ThingsBoard的本地环境搭建,以及源码的编译安装。

ThingsBoard从入门到实战课程,深入透析底层原理,快速搭建自己的IOT平台_哔哩哔哩_bilibiliThingsBoard从入门到实战课程,深入透析底层原理,快速搭建自己的IOT平台共计3条视频,包括:1、ThingsBoard项目介绍、2、ThingsBoard前端Vue版本代码编译、3、ThingsBoard本地后端源码编译等,UP主更多精彩视频,请关注UP账号。icon-default.png?t=N7T8https://www.bilibili.com/video/BV1CH36egEDM/?spm_id_from=333.999.0.0&vd_source=5b535ac3589f53abe431d7f6afc44ff4

环境安装

开发环境要求:

  1. Jdk 11 版本 ;
  2. Postgresql 9 以上;
  3. Maven 3.6 以上;
  4. Git 工具;
  5. Idea 开发工具;

上述条件满足后,接下来是通过 Git 拉取代码。

ThingBoard官网:GitHub - thingsboard/thingsboard: Open-source IoT Platform - Device management, data collection, processing and visualization.Open-source IoT Platform - Device management, data collection, processing and visualization. - thingsboard/thingsboardicon-default.png?t=N7T8https://github.com/thingsboard/thingsboard

git clone https://github.com/thingsboard/thingsboard.git

 注意:

由于ThingsBoard是放在Github上,如果你无法下载,则查看文章:MacOS 无法ping 通 github.com 解决方案_macbook无法被ping通-CSDN博客

1、克隆ThingsBoard源代码

2、下载完成后,IDEA 导入 thingsboard

导入后,先使用maven工具清理项目编译文件。

导入IDEA后,需要改下pom文件里面的node和npm版本与你本地的一致。如图:

改完之后可以去掉license检查步骤,节省编译时间。

3、开始编译

在 IDEA 控制台(左下方)Terminal 输入以下命令进行编译:

mvn clean install -DskipTests

等一段时间后,看到下面这张图就算编译成功,如果没有编译成功请按照本教程最后的常见问题进行排查。

 4、初始化数据库

1、使用Docker创建postgres容器化创建
docker run --name postgres --restart=always -e POSTGRES_PASSWORD=postgres -p 5432:5432 -v /home/postgres/data:/var/lib/postgresql  --privileged -d postgres:14.2

docker run  :运行容器

name :容器到名称为postgres

restart:always  :在系统重新启动的情况下自动启动在出现故障的情况下自动重新启动。

POSTGRES_PASSWORD :数据库的密码
5432:5432 :将本地端口5432转发至HTTP端口5432
-d :程序后台执行

postgres:14.2 :postgres版本号14.2

-v /home/postgres/data:/var/lib/postgresql :将数据映射到磁盘上

查看是否创建成功

docker logs postgres

2、使用navacat进行数据库连接postgreSQL

3、将dao目录下的到sql文件拷贝到application目录下的data中,用于数据的初始化 

4、打开application目录下的thingsboard.yml,更改datasource链接地址

localhost:修改成你们自己的地址以及数据库名称

username:postgresql数据库用户名

password:postgresql数据库密码

  datasource:
    # Database driver for Spring JPA - org.postgresql.Driver
    driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.postgresql.Driver}"
    # Database connection URL
    url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/thingsboard}"
    # Database user name
    username: "${SPRING_DATASOURCE_USERNAME:postgres}"
    # Database user password
    password: "${SPRING_DATASOURCE_PASSWORD:postgres}"

5、运行 ThingsBoardInstallApplication进行数据库初始化

刷新ThingBoard数据库表,查看是否运行成功 

6、运行ThingsBoardServiceApplication将项目运行起来

执行完命令后你可以http://{your-host-ip}:8080在浏览器中打开(例如http://localhost:8080)。 使用以下默认凭据:

  • 系统层账号: sysadmin@thingsboard.org / sysadmin
  • 租户层账号: tenant@thingsboard.org / tenant
  • 客户层账号: customer@thingsboard.org / customer

可以在帐户详情页面中更改每个帐户的密码。

项目问题咨询:如下:开源免费!!!

  • 39
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Thingsboard是一个开源物联网平台,它提供了一个完整的解决方案来连接物理设备和云端系统,以便于数据的传输和管理。Thingsboard源码开源的,允许开发者自由地定制和修改它的功能和特性,从而满足各种不同的物联网应用场景的需求。 Thingsboard源码解析主要包括以下几个方面: 1. 系统架构和组件:Thingsboard采用了分布式架构设计,包括多个组件,在设备端包括嵌入式平台、传感器等,云端包括数据存储、消息队列、规则引擎等。源码解析可以了解到每个组件的功能和相互协作关系。 2. 数据传输和管理:Thingsboard采用了多种协议和技术来实现数据的传输和管理,包括MQTT、HTTP、CoAP等,同时还采用了数据缓存和异步处理等技术来保证数据的高可靠性和处理效率。源码解析可以深入了解这些技术和实现方式。 3. 规则引擎和数据分析:Thingsboard的规则引擎和数据分析功能可以自定义和配置各种数据处理和转换规则,并提供可视化的工具来实现数据分析和可视化展示。源码解析可以了解到规则引擎和数据分析的具体实现方式和应用场景。 4. 用户界面和可定制性:Thingsboard提供了丰富的用户界面和可定制性特性,包括可拖拽的页面设计、自定义样式和主题、Dashboard等。源码解析可以了解到这些特性的实现方式和技术实现。 总之,Thingsboard源码是一个非常受欢迎的开源物联网平台的源码,通过对其源码的解析可以深入了解其技术实现和应用场景,为开发者提供了很多有价值的经验和教训。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值