最近因业务需求要用到Thingsboard物联网平台,并需要编译源码,linux端安装部署,logo替换,java代码发送遥测数据,Thingsboard集成物联网关的应用,本人会对以上的内容逐一记录。
首先你得先能在windows环境下完成源码编译,详细过程请移步至:Thingsboard开发环境搭建(一)----源码编译
完成编译后,打开源码application/target路径下,能看到如下文件:
是的,一次编译到处安装!
下面我们就开始讲ThingsBoard安装到Linux中吧,我用的是CentOS版本:Ubuntu环境的安装请看官方文档:
https://thingsboard.io/docs/user-guide/install/ubuntu/
sudo yum install java-1.8.0-openjdk
请不要忘记将操作系统配置为默认使用OpenJDK 8。您可以使用以下命令配置哪个版本是默认版本:
sudo update-alternatives --config java
您可以使用以下命令检查安装:
java -version
显示为:
openjdk version "1.8.0_xxx"
OpenJDK Runtime Environment (...)
OpenJDK 64-Bit Server VM (build ...)
1、将在windows编译好的源码中application/target路径下的thingsboard.rpm移动到linux某个路径下
2、将ThingsBoard作为服务安装
sudo rpm -Uvh thingsboard-2.4.2.1.rpm
3、配置ThingsBoard数据库
# Update your system
sudo yum update
# Install the repository RPM:
sudo yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Install packages
sudo yum install postgresql96-server postgresql96-contrib
# Initialize your PostgreSQL DB
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
sudo systemctl start postgresql-9.6
# Optional: Configure PostgreSQL to start on boot
sudo systemctl enable postgresql-9.6
4、一旦安装了PostgreSQL,您可能想要创建一个新用户或为主要用户设置密码。以下说明将有助于为主要PostgreSQL用户设置密码:
sudo su - postgres
psql
\password #提示你输入密码 这里密码设为postgres
\q
5、然后,按“ Ctrl + D”返回主用户控制台。
配置密码后,编辑pg_hba.conf以对postgres用户使用MD5认证。
编辑pg_hba.conf文件:
sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf
找到以下几行:
# IPv4 local connections:
host all all 127.0.0.1/32 ident
替换为:
host all all 127.0.0.1/32 md5
最后,您应该重新启动PostgreSQL服务以初始化新配置:
sudo systemctl restart postgresql-9.6.service
6、连接到数据库以创建Thingsboard DB:
psql -U postgres -d postgres -h 127.0.0.1 -W
CREATE DATABASE thingsboard;
\q
运行安装脚本:
sudo /usr/share/thingsboard/bin/install/install.sh --loadDemo
执行以下命令以启动ThingsBoard:
sudo service thingsboard start
启动后,您将可以使用以下链接打开Web UI:
http://localhost:8080/
如果在安装脚本的执行过程中指定了–loadDemo,则可以使用以下默认凭据:
Systen管理员:[email protected] / sysadmin
租户管理员:[email protected] /tenant
客户用户:[email protected] /customer