ThingsBoard從安裝到放棄

1、開發環境準備前端

  1. 安裝jdk,版本:jdk1.8node

  2. 安裝Maven,版本:3.6.1webpack

  3. 安裝git,版本:2.21.0git

  4. 安裝Node js,版本10.16.0 必定要和源碼中pom文件下的一致,不然在使用npm編譯不經過es6

  5. 安裝所須要的模塊web

    • npm install -g cross-env
    • npm install -g webpack
    • npm install --global gulp
  6. 使用git從官方倉庫克隆項目spring

2、編譯項目,導入ideasql

  1. 進入thangsboard根目錄,Maven編譯項目
    • mvn clean install –DskipTests
    • mvn clean install –DskipTests
  2. 導入idea數據庫

    • 配置JDK
    • 支持es6語法
    • 安裝Lombok插件
  3. 安裝postgresql數據庫npm

  4. 使用Navcat鏈接數據庫,在thingsboard項目中找到sql文件(dao-src-main-resources-sql),Navcat中執行sql文件。

  5. 安裝Redis,(不懂爲何要安裝!)

  6. 修改thonfsboard.yml文件

    # 註釋掉
    # Cassandra driver configuration parameters
    #cassandra:
    #  # Thingsboard cluster name
    #  cluster_name: "${CASSANDRA_CLUSTER_NAME:Thingsboard Cluster}"
    #  # Thingsboard keyspace name
    #  keyspace_name: "${CASSANDRA_KEYSPACE_NAME:thingsboard}"
    #  # Specify node list
    #  url: "${CASSANDRA_URL:127.0.0.1:9042}"
    #  # Enable/disable secure connection
    #  ssl: "${CASSANDRA_USE_SSL:false}"
    #  # Enable/disable JMX
    #  jmx: "${CASSANDRA_USE_JMX:true}"
    #  # Enable/disable metrics collection.
    #  metrics: "${CASSANDRA_DISABLE_METRICS:true}"
    #  # NONE SNAPPY LZ4
    #  compression: "${CASSANDRA_COMPRESSION:none}"
    #  # Specify cassandra cluster initialization timeout in milliseconds (if no hosts available during startup)
    #  init_timeout_ms: "${CASSANDRA_CLUSTER_INIT_TIMEOUT_MS:300000}"
    #  # Specify cassandra claster initialization retry interval (if no hosts available during startup)
    #  init_retry_interval_ms: "${CASSANDRA_CLUSTER_INIT_RETRY_INTERVAL_MS:3000}"
    #  max_requests_per_connection_local: "${CASSANDRA_MAX_REQUESTS_PER_CONNECTION_LOCAL:32768}"
    #  max_requests_per_connection_remote: "${CASSANDRA_MAX_REQUESTS_PER_CONNECTION_REMOTE:32768}"
    #  # Credential parameters #
    #  credentials: "${CASSANDRA_USE_CREDENTIALS:false}"
    #  # Specify your username
    #  username: "${CASSANDRA_USERNAME:}"
    #  # Specify your password
    #  password: "${CASSANDRA_PASSWORD:}"
    #
    #  # Cassandra cluster connection socket parameters #
    #  socket:
    #    connect_timeout: "${CASSANDRA_SOCKET_TIMEOUT:5000}"
    #    read_timeout: "${CASSANDRA_SOCKET_READ_TIMEOUT:20000}"
    #    keep_alive: "${CASSANDRA_SOCKET_KEEP_ALIVE:true}"
    #    reuse_address: "${CASSANDRA_SOCKET_REUSE_ADDRESS:true}"
    #    so_linger: "${CASSANDRA_SOCKET_SO_LINGER:}"
    #    tcp_no_delay: "${CASSANDRA_SOCKET_TCP_NO_DELAY:false}"
    #    receive_buffer_size: "${CASSANDRA_SOCKET_RECEIVE_BUFFER_SIZE:}"
    #    send_buffer_size: "${CASSANDRA_SOCKET_SEND_BUFFER_SIZE:}"
    #
    #  # Cassandra cluster connection query parameters  #
    #  query:
    #    read_consistency_level: "${CASSANDRA_READ_CONSISTENCY_LEVEL:ONE}"
    #    write_consistency_level: "${CASSANDRA_WRITE_CONSISTENCY_LEVEL:ONE}"
    #    default_fetch_size: "${CASSANDRA_DEFAULT_FETCH_SIZE:2000}"
    #    # Specify partitioning size for timestamp key-value storage. Example MINUTES, HOURS, DAYS, MONTHS,INDEFINITE
    #    ts_key_value_partitioning: "${TS_KV_PARTITIONING:MONTHS}"
    #    ts_key_value_ttl: "${TS_KV_TTL:0}"
    #    events_ttl: "${TS_EVENTS_TTL:0}"
    #    # Specify TTL of debug log in seconds. The current value corresponds to one week
    #    debug_events_ttl: "${DEBUG_EVENTS_TTL:604800}"
    #    buffer_size: "${CASSANDRA_QUERY_BUFFER_SIZE:200000}"
    #    concurrent_limit: "${CASSANDRA_QUERY_CONCURRENT_LIMIT:1000}"
    #    permit_max_wait_time: "${PERMIT_MAX_WAIT_TIME:120000}"
    #    dispatcher_threads: "${CASSANDRA_QUERY_DISPATCHER_THREADS:2}"
    #    callback_threads: "${CASSANDRA_QUERY_CALLBACK_THREADS:4}"
    #    poll_ms: "${CASSANDRA_QUERY_POLL_MS:50}"
    #    rate_limit_print_interval_ms: "${CASSANDRA_QUERY_RATE_LIMIT_PRINT_MS:10000}"
    #    # set all data types values except target to null for the same ts on save
    #    set_null_values_enabled: "${CASSANDRA_QUERY_SET_NULL_VALUES_ENABLED:false}"
    #    tenant_rate_limits:
    #      enabled: "${CASSANDRA_QUERY_TENANT_RATE_LIMITS_ENABLED:false}"
    #      configuration: "${CASSANDRA_QUERY_TENANT_RATE_LIMITS_CONFIGURATION:1000:1,30000:60}"
    #      print_tenant_names: "${CASSANDRA_QUERY_TENANT_RATE_LIMITS_PRINT_TENANT_NAMES:false}"
    # 修改數據庫名,密碼,鏈接
    # SQL DAO Configuration
    spring:
      data:
        jpa:
          repositories:
            enabled: "true"
      jpa:
        hibernate:
          ddl-auto: "none"
        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/postgres}"
        # 修改數據庫名
        username: "${SPRING_DATASOURCE_USERNAME:postgres}"
        # 修改密碼
        password: "${SPRING_DATASOURCE_PASSWORD:112358}"
  7. 在idea中運行項目,若是沒有報錯即將大功告成(正常不會報錯的),此時已經能夠登陸thingsboard了。,訪問http://localhost:8080登錄。用戶名:sysadmin@thingsboard.org密碼:sysadmin

3、編譯UI(可編可不編?)

  1. 命令行下進入ui根目錄,執行
    • npm install
    • npm run build
    • npm run start
  2. 將會開啓監聽3000端口,訪問http://localhost:3000 登陸便可。(後臺代碼和前端需同時運行!)

4、安裝完成後的事宜

  1. 登陸,兩個端口均可。用戶名:sysadmin@thingsboard.org密碼:sysadmin

  2. 點擊添加租戶

  3. 管理租戶管理員

  4. 添加新用戶

  5. 驗證密碼後使用新租戶管理員登陸

    盡情的玩耍吧!! 5、參考 https://blog.csdn.net/curly_d/article/details/89884604 https://blog.csdn.net/julyqian/article/details/88081367

相關文章
相關標籤/搜索