摘要:本文為有二次開發需求的同學準備,可以修改源碼后編譯運行。具體操作即可在端口啟動前端服務。
本文為有thingsboard二次開發需求的同學準備,可以修改源碼后編譯運行。
準備工作 一臺4Gb內存以上的服務器(官方推薦8Gb以上,但實測以下配置即可正常運行) Centos7系統 打開8080端口 安裝wgetsudo yum install -y wget
更新 EPEL releasesudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
開始安裝 安裝Java JDK-1.8sudo yum install java-1.8.0-openjdk
sudo update-alternatives --config java
查看Java是否安裝成功java -version
期望輸出為openjdk version "1.8.0_xxx" OpenJDK Runtime Environment (...) OpenJDK 64-Bit Server VM (build ...)如果輸出不正常則需要配置環境變量
vim /etc/profile
export JAVA_HOME = ${你的安裝路徑不帶bin}
$JAVA_HOME/bin
安裝最新版Maven(直接用yum安裝可能會導致版本過低無法編譯) 下載wget https://www-eu.apache.org/dist/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz
解壓縮tar xvf apache-maven-3.6.0-bin.tar.gz -C /usr/lib/
配置環境變量vi /etc/profile
添加以下代碼M2_HOME="/usr/lib/apache-maven-3.6.0" export M2_HOME M2="$M2_HOME/bin" MAVEN_OPTS="-Xms256m -Xmx512m" export M2 MAVEN_OPTS PATH=$M2:$PATH export PATH加載更新后的profile
. /etc/profile
source /etc/profile
查看Maven是否配置成功mvn -version
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T23:41:47+05:00) Maven home: /usr/lib/apache-maven-3.6.0 Java version: 1.8.0_191, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-957.el7.x86_64", arch: "amd64", family: "unix"安裝PostgreSQL 更新yum
sudo yum update
安裝RPMsudo yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
安裝Packagessudo yum install postgresql96-server postgresql96-contrib
初始化PostgreSQLsudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
啟動服務sudo systemctl start postgresql-9.6
設置PostgreSQL為開機啟動sudo systemctl enable postgresql-9.6
配置PostgreSQL密碼 切換用戶postgressudo su - postgres
進入PostgreSQLpsql
設置密碼(注意""也需要輸入)password
記住設置的密碼并退出q
更改PostgreSQL配置項sudo vim /var/lib/pgsql/9.6/data/pg_hba.conf
更改以下行# IPv4 local connections: host all all 127.0.0.1/32 ident為
# IPv4 local connections: host all all 127.0.0.1/32 md5重啟PostgreSQL
sudo systemctl restart postgresql-9.6.service
創建database 進入數據庫psql
psql -U postgres -d postgres -h 127.0.0.1 -W
創建thingsboard數據庫并退出CREATE DATABASE thingsboard;
q
yum install git
Clone源碼cd ~
git clone git@github.com:thingsboard/thingsboard.git
cd thingsboard
git checkout release-2.3
vim pom.xml
com.mycila license-maven-plugin 3.0 ....
:wq
修改Thingsboard數據庫相關配置cd ~/thingsboard/application/src/main/resources
vim thingsboard.yml
# HSQLDB DAO Configuration #spring: # data: # jpa: # repositories: # enabled: "true" # jpa: # hibernate: # ddl-auto: "validate" # database-platform: "${SPRING_JPA_DATABASE_PLATFORM:org.hibernate.dialect.HSQLDialect}" # datasource: # driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.hsqldb.jdbc.JDBCDriver}" # url: "${SPRING_DATASOURCE_URL:jdbc:hsqldb:file:${SQL_DATA_FOLDER:/tmp}/thingsboardDb;sql.enforce_si#ze=false;hsqldb.log_size=5}" # username: "${SPRING_DATASOURCE_USERNAME:sa}" # password: "${SPRING_DATASOURCE_PASSWORD:}" # PostgreSQL DAO Configuration spring: data: sql: repositories: enabled: "true" sql: hibernate: ddl-auto: "validate" database-platform: "${SPRING_JPA_DATABASE_PLATFORM:org.hibernate.dialect.PostgreSQLDialect}" datasource: driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.postgresql.Driver}" url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/thingsboard}" username: "${SPRING_DATASOURCE_USERNAME:postgres}" password: "${SPRING_DATASOURCE_PASSWORD:postgres}"
password: "${SPRING_DATASOURCE_PASSWORD:postgres}"
跳過js-executor和web-ui的windows編譯 分別修改以下兩個文件vim msa/js-executor/pom.xml
vim msa/web-ui/pom.xml
編譯thingsboard源碼org.apache.maven.plugins maven-assembly-plugin 3.0.0 ${pkg.name} src/main/assembly/windows.xml assembly package single
cd ~/thingsboard
耗時較長需要耐心等待mvn clean install -DskipTests -X
出現如下提示則編譯成功(缺一不可) 安裝編譯好的tingsboard 找到編譯好的安裝文件cd application/target
運行安裝sudo rpm -Uvh thingsboard.rpm
運行腳本sudo /usr/share/thingsboard/bin/install/install.sh --loadDemo
啟動服務sudo service thingsboard start
完成 至此從配置環境到源碼編譯運行的Thingsboard運行成功 可以訪問localhost:8080服務器ip:8080訪問頁面 注意事項 前端的同學注意具體操作:
cd ~/thingsboard/ui
maven install -P npm-start
即可在3000端口啟動前端服務。
vim ~/thingsboard/ui/server.js
const forwardHost = "localhost"; const ruleNodeUiforwardHost = "localhost";
psql -d 數據庫名稱 -U 用戶名 -f xxx.sql
psql -d 數據庫名稱 -f xxx.sql
刪除數據庫drop database 數據庫名稱
Thingsboard服務啟動/停止sudo service thingsboard [start | stop]
查看Thingsboard錯誤日志cat /var/log/thingsboard/thingsboard.log | grep ERROR
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/105639.html
摘要:本文為有二次開發需求的同學準備,可以修改源碼后編譯運行。具體操作即可在端口啟動前端服務。 本文為有thingsboard二次開發需求的同學準備,可以修改源碼后編譯運行。 準備工作 一臺4Gb內存以上的服務器(官方推薦8Gb以上,但實測以下配置即可正常運行) showImg(https://segmentfault.com/img/bVbu3eN?w=328&h=86); Centos7...
摘要:文章目錄前言從上下源碼后運行報錯不支援驗證類型。解決辦法就是去找到下載,注意選擇源碼版本下載,如下圖。入門教程本地環境搭建和源碼編譯安裝,獻給編譯失敗的同學,教程不斷優化附錄 ...
摘要:物聯網平臺編譯一步到位物聯網平臺編譯一步到位簡介項目前置準備安裝安裝將放入本地緩存配置鏡像地址編譯運行物聯網平臺編譯一步到位先上編譯結果,耗時分秒簡介是一個開源物聯網平臺,可實現物聯網項目的快速開發管理和擴展。 ...
摘要:作為一個開源且免費的服務器,常用來作為開發的工具。使用登錄服務器,參考使用密鑰對連接實例。默認是以一般用戶運行,將網站代碼權限改為,執行命令重啟。在瀏覽器地址欄中輸入公網地址,完成驗證。使用服務為實例配置網站及綁定域名。Tomcat 作為一個開源且免費的 Java Web 服務器,常用來作為 Web 開發的工具。它可以托管由 Servlet、JSP 頁面(動態內容)、HTML 頁面、JS、樣...
閱讀 4981·2021-11-25 09:43
閱讀 1684·2021-10-27 14:18
閱讀 1054·2021-09-22 16:03
閱讀 1348·2019-08-30 13:19
閱讀 1571·2019-08-30 11:15
閱讀 1645·2019-08-26 14:04
閱讀 3124·2019-08-23 18:40
閱讀 1165·2019-08-23 18:17