Commit c0a8849784f82372c23ef7302dbbc1fb7bce7c9d

Authored by Andrew Shvayka
Committed by GitHub
2 parents 14c5cf24 5e9309ee

Merge pull request #227 from volodymyr-babak/master

Docker updates for new release
@@ -233,7 +233,7 @@ spring: @@ -233,7 +233,7 @@ spring:
233 jpa: 233 jpa:
234 hibernate: 234 hibernate:
235 ddl-auto: "validate" 235 ddl-auto: "validate"
236 - database-platform: "org.hibernate.dialect.HSQLDialect" 236 + database-platform: "${SPRING_JPA_DATABASE_PLATFORM:org.hibernate.dialect.HSQLDialect}"
237 datasource: 237 datasource:
238 driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.hsqldb.jdbc.JDBCDriver}" 238 driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.hsqldb.jdbc.JDBCDriver}"
239 url: "${SPRING_DATASOURCE_URL:jdbc:hsqldb:file:${SQL_DATA_FOLDER:/tmp}/thingsboardDb;sql.enforce_size=false}" 239 url: "${SPRING_DATASOURCE_URL:jdbc:hsqldb:file:${SQL_DATA_FOLDER:/tmp}/thingsboardDb;sql.enforce_size=false}"
@@ -250,7 +250,7 @@ spring: @@ -250,7 +250,7 @@ spring:
250 # jpa: 250 # jpa:
251 # hibernate: 251 # hibernate:
252 # ddl-auto: "validate" 252 # ddl-auto: "validate"
253 -# database-platform: "org.hibernate.dialect.PostgreSQLDialect" 253 +# database-platform: "${SPRING_JPA_DATABASE_PLATFORM:org.hibernate.dialect.PostgreSQLDialect}"
254 # datasource: 254 # datasource:
255 # driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.postgresql.Driver}" 255 # driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.postgresql.Driver}"
256 # url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/thingsboard}" 256 # url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/thingsboard}"
1 # cassandra environment variables 1 # cassandra environment variables
2 CASSANDRA_DATA_DIR=/home/docker/cassandra_volume 2 CASSANDRA_DATA_DIR=/home/docker/cassandra_volume
3 -CASSANDRA_URL=cassandra  
4 3
5 # postgres environment variables 4 # postgres environment variables
6 POSTGRES_DATA_DIR=/home/docker/postgres_volume 5 POSTGRES_DATA_DIR=/home/docker/postgres_volume
7 POSTGRES_DB=thingsboard 6 POSTGRES_DB=thingsboard
8 -POSTGRES_USER=postgres  
9 -POSTGRES_PASSWORD=postgres  
10 -POSTGRES_URL=postgres 7 +
  8 +# hsqldb environment variables
  9 +HSQLDB_DATA_DIR=/home/docker/hsqldb_volume
11 10
12 # environment variables for schema init and insert system and demo data 11 # environment variables for schema init and insert system and demo data
13 -CREATE_SCHEMA=true  
14 -ADD_SYSTEM_DATA=false 12 +ADD_SCHEMA_AND_SYSTEM_DATA=false
15 ADD_DEMO_DATA=false 13 ADD_DEMO_DATA=false
docker/cassandra-setup/Dockerfile renamed from docker/tb-cassandra-schema/Dockerfile
@@ -14,15 +14,11 @@ @@ -14,15 +14,11 @@
14 # limitations under the License. 14 # limitations under the License.
15 # 15 #
16 16
17 -FROM cassandra:3.9 17 +FROM openjdk:8-jre
18 18
19 -ADD install-schema.sh /install-schema.sh 19 +ADD install.sh /install.sh
  20 +ADD thingsboard.deb /thingsboard.deb
20 21
21 RUN apt-get update \ 22 RUN apt-get update \
22 && apt-get install -y nmap \ 23 && apt-get install -y nmap \
23 - && chmod +x /install-schema.sh  
24 -  
25 -ADD schema.cql /schema.cql  
26 -ADD demo-data.cql /demo-data.cql  
27 -ADD system-data.cql /system-data.cql  
28 - 24 + && chmod +x /install.sh
docker/cassandra-setup/Makefile renamed from docker/tb-cassandra-schema/Makefile
1 -VERSION=1.2.4 1 +VERSION=1.3.0
2 PROJECT=thingsboard 2 PROJECT=thingsboard
3 -APP=tb-cassandra-schema 3 +APP=cassandra-setup
4 4
5 build: 5 build:
6 - cp ../../dao/src/main/resources/cassandra/schema.cql .  
7 - cp ../../dao/src/main/resources/cassandra/demo-data.cql .  
8 - cp ../../dao/src/main/resources/cassandra/system-data.cql . 6 + cp ../../application/target/thingsboard.deb .
9 docker build --pull -t ${PROJECT}/${APP}:${VERSION} -t ${PROJECT}/${APP}:latest . 7 docker build --pull -t ${PROJECT}/${APP}:${VERSION} -t ${PROJECT}/${APP}:latest .
10 - rm schema.cql demo-data.cql system-data.cql 8 + rm thingsboard.deb
11 9
12 push: build 10 push: build
13 docker push ${PROJECT}/${APP}:${VERSION} 11 docker push ${PROJECT}/${APP}:${VERSION}
docker/cassandra-setup/install.sh renamed from docker/tb-postgres-schema/Dockerfile 100644 → 100755
  1 +#!/bin/bash
1 # 2 #
2 # Copyright © 2016-2017 The Thingsboard Authors 3 # Copyright © 2016-2017 The Thingsboard Authors
3 # 4 #
@@ -14,14 +15,19 @@ @@ -14,14 +15,19 @@
14 # limitations under the License. 15 # limitations under the License.
15 # 16 #
16 17
17 -FROM postgres:9.6  
18 18
19 -ADD install-schema.sh /install-schema.sh 19 +dpkg -i /thingsboard.deb
20 20
21 -RUN apt-get update \  
22 - && apt-get install -y nmap \  
23 - && chmod +x /install-schema.sh 21 +until nmap $CASSANDRA_HOST -p $CASSANDRA_PORT | grep "$CASSANDRA_PORT/tcp open"
  22 +do
  23 + echo "Wait for cassandra db to start..."
  24 + sleep 10
  25 +done
24 26
25 -ADD schema.sql /schema.sql  
26 -ADD system-data.sql /system-data.sql  
27 -ADD demo-data.sql /demo-data.sql  
  27 +echo "Creating 'Thingsboard' schema and system data..."
  28 +if [ "$ADD_DEMO_DATA" == "true" ]; then
  29 + echo "plus demo data..."
  30 + /usr/share/thingsboard/bin/install/install.sh --loadDemo
  31 +elif [ "$ADD_DEMO_DATA" == "false" ]; then
  32 + /usr/share/thingsboard/bin/install/install.sh
  33 +fi
1 -VERSION=1.2.4 1 +VERSION=1.3.0
2 PROJECT=thingsboard 2 PROJECT=thingsboard
3 APP=cassandra 3 APP=cassandra
4 4
@@ -7,4 +7,4 @@ build: @@ -7,4 +7,4 @@ build:
7 7
8 push: build 8 push: build
9 docker push ${PROJECT}/${APP}:${VERSION} 9 docker push ${PROJECT}/${APP}:${VERSION}
10 - docker push ${PROJECT}/${APP}:latest 10 + docker push ${PROJECT}/${APP}:latest
@@ -18,22 +18,19 @@ version: '2' @@ -18,22 +18,19 @@ version: '2'
18 18
19 services: 19 services:
20 tb: 20 tb:
21 - image: "thingsboard/application:1.2.4" 21 + image: "thingsboard/application:1.3.0"
22 ports: 22 ports:
23 - "8080:8080" 23 - "8080:8080"
24 - "1883:1883" 24 - "1883:1883"
25 - "5683:5683/udp" 25 - "5683:5683/udp"
26 env_file: 26 env_file:
27 - tb.env 27 - tb.env
28 - entrypoint: /run-application.sh  
29 - tb-cassandra-schema:  
30 - image: "thingsboard/tb-cassandra-schema:1.2.4"  
31 environment: 28 environment:
32 - - CREATE_SCHEMA=${CREATE_SCHEMA}  
33 - - ADD_SYSTEM_DATA=${ADD_SYSTEM_DATA} 29 + - ADD_SCHEMA_AND_SYSTEM_DATA=${ADD_SCHEMA_AND_SYSTEM_DATA}
34 - ADD_DEMO_DATA=${ADD_DEMO_DATA} 30 - ADD_DEMO_DATA=${ADD_DEMO_DATA}
35 - - CASSANDRA_URL=${CASSANDRA_URL}  
36 - entrypoint: /install-schema.sh 31 + volumes:
  32 + - "${HSQLDB_DATA_DIR}:/usr/share/thingsboard/data/sql"
  33 + entrypoint: /run-application.sh
37 cassandra: 34 cassandra:
38 image: "cassandra:3.9" 35 image: "cassandra:3.9"
39 ports: 36 ports:
@@ -52,18 +49,5 @@ services: @@ -52,18 +49,5 @@ services:
52 - "5432" 49 - "5432"
53 environment: 50 environment:
54 - POSTGRES_DB=${POSTGRES_DB} 51 - POSTGRES_DB=${POSTGRES_DB}
55 - - POSTGRES_USER=${POSTGRES_USER}  
56 - - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}  
57 volumes: 52 volumes:
58 - "${POSTGRES_DATA_DIR}:/var/lib/postgresql/data" 53 - "${POSTGRES_DATA_DIR}:/var/lib/postgresql/data"
59 - tb-postgres-schema:  
60 - image: "thingsboard/tb-postgres-schema:1.2.4"  
61 - environment:  
62 - - POSTGRES_URL=${POSTGRES_URL}  
63 - - POSTGRES_DB=${POSTGRES_DB}  
64 - - POSTGRES_USER=${POSTGRES_USER}  
65 - - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}  
66 - - CREATE_SCHEMA=${CREATE_SCHEMA}  
67 - - ADD_SYSTEM_DATA=${ADD_SYSTEM_DATA}  
68 - - ADD_DEMO_DATA=${ADD_DEMO_DATA}  
69 - entrypoint: /install-schema.sh  
docker/k8s/cassandra-setup.yaml renamed from docker/tb-cassandra-schema/tb-cassandra-schema.yaml
@@ -17,23 +17,25 @@ @@ -17,23 +17,25 @@
17 apiVersion: v1 17 apiVersion: v1
18 kind: Pod 18 kind: Pod
19 metadata: 19 metadata:
20 - name: tb-cassandra-schema 20 + name: cassandra-setup
21 spec: 21 spec:
22 containers: 22 containers:
23 - - name: tb-cassandra-schema 23 + - name: cassandra-setup
24 imagePullPolicy: Always 24 imagePullPolicy: Always
25 - image: thingsboard/tb-cassandra-schema:1.2.4 25 + image: thingsboard/cassandra-setup:1.3.0
26 env: 26 env:
27 - - name: CREATE_SCHEMA 27 + - name: ADD_DEMO_DATA
28 value: "true" 28 value: "true"
29 - - name: ADD_SYSTEM_DATA  
30 - value: "true"  
31 - - name : ADD_DEMO_DATA  
32 - value: "true"  
33 - - name : CASSANDRA_URL 29 + - name : CASSANDRA_HOST
34 value: "cassandra-headless" 30 value: "cassandra-headless"
  31 + - name : CASSANDRA_PORT
  32 + value: "9042"
  33 + - name : DATABASE_TYPE
  34 + value: "cassandra"
  35 + - name : CASSANDRA_URL
  36 + value: "cassandra-headless:9042"
35 command: 37 command:
36 - sh 38 - sh
37 - -c 39 - -c
38 - - /install-schema.sh  
39 - restartPolicy: Never  
  40 + - /install.sh
  41 + restartPolicy: Never
docker/k8s/cassandra.yaml renamed from docker/cassandra/cassandra.yaml
@@ -54,7 +54,7 @@ spec: @@ -54,7 +54,7 @@ spec:
54 topologyKey: "kubernetes.io/hostname" 54 topologyKey: "kubernetes.io/hostname"
55 containers: 55 containers:
56 - name: cassandra 56 - name: cassandra
57 - image: thingsboard/cassandra:1.2.4 57 + image: thingsboard/cassandra:1.3.0
58 imagePullPolicy: Always 58 imagePullPolicy: Always
59 ports: 59 ports:
60 - containerPort: 7000 60 - containerPort: 7000
docker/k8s/common.yaml renamed from docker/common/common.yaml
docker/k8s/tb.yaml renamed from docker/tb/tb.yaml
@@ -51,6 +51,9 @@ data: @@ -51,6 +51,9 @@ data:
51 zookeeper.enabled: "true" 51 zookeeper.enabled: "true"
52 zookeeper.url: "zk-headless" 52 zookeeper.url: "zk-headless"
53 cassandra.url: "cassandra-headless:9042" 53 cassandra.url: "cassandra-headless:9042"
  54 + cassandra.host: "cassandra-headless"
  55 + cassandra.port: "9042"
  56 + database.type: "cassandra"
54 --- 57 ---
55 apiVersion: apps/v1beta1 58 apiVersion: apps/v1beta1
56 kind: StatefulSet 59 kind: StatefulSet
@@ -79,7 +82,7 @@ spec: @@ -79,7 +82,7 @@ spec:
79 containers: 82 containers:
80 - name: tb 83 - name: tb
81 imagePullPolicy: Always 84 imagePullPolicy: Always
82 - image: thingsboard/application:1.2.4 85 + image: thingsboard/application:1.3.0
83 ports: 86 ports:
84 - containerPort: 8080 87 - containerPort: 8080
85 name: ui 88 name: ui
@@ -100,11 +103,26 @@ spec: @@ -100,11 +103,26 @@ spec:
100 configMapKeyRef: 103 configMapKeyRef:
101 name: tb-config 104 name: tb-config
102 key: zookeeper.url 105 key: zookeeper.url
  106 + - name : CASSANDRA_HOST
  107 + valueFrom:
  108 + configMapKeyRef:
  109 + name: tb-config
  110 + key: cassandra.host
  111 + - name : CASSANDRA_PORT
  112 + valueFrom:
  113 + configMapKeyRef:
  114 + name: tb-config
  115 + key: cassandra.port
103 - name : CASSANDRA_URL 116 - name : CASSANDRA_URL
104 valueFrom: 117 valueFrom:
105 configMapKeyRef: 118 configMapKeyRef:
106 name: tb-config 119 name: tb-config
107 key: cassandra.url 120 key: cassandra.url
  121 + - name: DATABASE_TYPE
  122 + valueFrom:
  123 + configMapKeyRef:
  124 + name: tb-config
  125 + key: database.type
108 - name : RPC_HOST 126 - name : RPC_HOST
109 valueFrom: 127 valueFrom:
110 fieldRef: 128 fieldRef:
docker/k8s/zookeeper.yaml renamed from docker/zookeeper/zookeeper.yaml
@@ -87,7 +87,7 @@ spec: @@ -87,7 +87,7 @@ spec:
87 containers: 87 containers:
88 - name: zk 88 - name: zk
89 imagePullPolicy: Always 89 imagePullPolicy: Always
90 - image: thingsboard/zk:1.2.4 90 + image: thingsboard/zk:1.3.0
91 ports: 91 ports:
92 - containerPort: 2181 92 - containerPort: 2181
93 name: client 93 name: client
1 -#!/bin/bash  
2 -#  
3 -# Copyright © 2016-2017 The Thingsboard Authors  
4 -#  
5 -# Licensed under the Apache License, Version 2.0 (the "License");  
6 -# you may not use this file except in compliance with the License.  
7 -# You may obtain a copy of the License at  
8 -#  
9 -# http://www.apache.org/licenses/LICENSE-2.0  
10 -#  
11 -# Unless required by applicable law or agreed to in writing, software  
12 -# distributed under the License is distributed on an "AS IS" BASIS,  
13 -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
14 -# See the License for the specific language governing permissions and  
15 -# limitations under the License.  
16 -#  
17 -  
18 -  
19 -until nmap $CASSANDRA_URL -p 9042 | grep "9042/tcp open"  
20 -do  
21 - echo "Wait for $CASSANDRA_URL..."  
22 - sleep 10  
23 -done  
24 -  
25 -if [ "$CREATE_SCHEMA" == "true" ]; then  
26 - echo "Creating 'Thingsboard' keyspace..."  
27 - cqlsh $CASSANDRA_URL -f /schema.cql  
28 - if [ "$?" -eq 0 ]; then  
29 - echo "'Thingsboard' keyspace was successfully created!"  
30 - else  
31 - echo "There were issues while creating 'Thingsboard' keyspace!"  
32 - fi  
33 -fi  
34 -  
35 -if [ "$ADD_SYSTEM_DATA" == "true" ]; then  
36 - echo "Adding system data..."  
37 - cqlsh $CASSANDRA_URL -f /system-data.cql  
38 - if [ "$?" -eq 0 ]; then  
39 - echo "System data was successfully added!"  
40 - else  
41 - echo "There were issues while adding System data!"  
42 - fi  
43 -fi  
44 -  
45 -if [ "$ADD_DEMO_DATA" == "true" ]; then  
46 - echo "Adding demo data..."  
47 - cqlsh $CASSANDRA_URL -f /demo-data.cql  
48 - if [ "$?" -eq 0 ]; then  
49 - echo "Demo data was successfully added!"  
50 - else  
51 - echo "There were issues while adding Demo data!"  
52 - fi  
53 -fi  
1 -VERSION=1.2.4  
2 -PROJECT=thingsboard  
3 -APP=tb-postgres-schema  
4 -  
5 -build:  
6 - cp ../../dao/src/main/resources/postgres/schema.sql .  
7 - cp ../../dao/src/main/resources/postgres/demo-data.sql .  
8 - cp ../../dao/src/main/resources/postgres/system-data.sql .  
9 - docker build --pull -t ${PROJECT}/${APP}:${VERSION} -t ${PROJECT}/${APP}:latest .  
10 - rm schema.sql demo-data.sql system-data.sql  
11 -  
12 -push: build  
13 - docker push ${PROJECT}/${APP}:${VERSION}  
14 - docker push ${PROJECT}/${APP}:latest  
1 -#!/bin/bash  
2 -#  
3 -# Copyright © 2016-2017 The Thingsboard Authors  
4 -#  
5 -# Licensed under the Apache License, Version 2.0 (the "License");  
6 -# you may not use this file except in compliance with the License.  
7 -# You may obtain a copy of the License at  
8 -#  
9 -# http://www.apache.org/licenses/LICENSE-2.0  
10 -#  
11 -# Unless required by applicable law or agreed to in writing, software  
12 -# distributed under the License is distributed on an "AS IS" BASIS,  
13 -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
14 -# See the License for the specific language governing permissions and  
15 -# limitations under the License.  
16 -#  
17 -  
18 -until nmap $POSTGRES_URL -p 5432 | grep "5432/tcp open"  
19 -do  
20 - echo "Waiting for $POSTGRES_URL..."  
21 - sleep 10  
22 -done  
23 -  
24 -if [ "$CREATE_SCHEMA" == "true" ]; then  
25 - echo "Creating 'Thingsboard' database schema..."  
26 - PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$POSTGRES_URL" -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" -f /schema.sql  
27 - if [ "$?" -eq 0 ]; then  
28 - echo "'Thingsboard' database schema was successfully created!"  
29 - else  
30 - echo "There were issues while creating 'Thingsboard' database schema!"  
31 - fi  
32 -fi  
33 -  
34 -if [ "$ADD_SYSTEM_DATA" == "true" ]; then  
35 - echo "Adding system data..."  
36 - PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$POSTGRES_URL" -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" -f /system-data.sql  
37 - if [ "$?" -eq 0 ]; then  
38 - echo "System data was successfully added!"  
39 - else  
40 - echo "There were issues while adding System data!"  
41 - fi  
42 -fi  
43 -  
44 -if [ "$ADD_DEMO_DATA" == "true" ]; then  
45 - echo "Adding demo data..."  
46 - PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$POSTGRES_URL" -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" -f /demo-data.sql  
47 - if [ "$?" -eq 0 ]; then  
48 - echo "Demo data was successfully added!"  
49 - else  
50 - echo "There were issues while adding Demo data!"  
51 - fi  
52 -fi  
1 #Thingsboard server configuration 1 #Thingsboard server configuration
2 -  
3 -TB_CASSANDRA_SCHEMA_URL=tb-cassandra-schema  
4 -CASSANDRA_URL=cassandra:9042  
5 -ZOOKEEPER_URL=zk:2181  
6 MQTT_BIND_ADDRESS=0.0.0.0 2 MQTT_BIND_ADDRESS=0.0.0.0
7 MQTT_BIND_PORT=1883 3 MQTT_BIND_PORT=1883
8 COAP_BIND_ADDRESS=0.0.0.0 4 COAP_BIND_ADDRESS=0.0.0.0
9 -COAP_BIND_PORT=5683  
  5 +COAP_BIND_PORT=5683
  6 +
  7 +# zk config
  8 +ZOOKEEPER_URL=zk:2181
  9 +
  10 +# type of database to use: sql[DEFAULT] or cassandra
  11 +DATABASE_TYPE=sql
  12 +
  13 +# cassandra db config
  14 +CASSANDRA_URL=cassandra:9042
  15 +CASSANDRA_HOST=cassandra
  16 +CASSANDRA_PORT=9042
  17 +
  18 +# postgres db config
  19 +POSTGRES_HOST=cassandra
  20 +POSTGRES_PORT=9042
  21 +# SPRING_JPA_DATABASE_PLATFORM=org.hibernate.dialect.PostgreSQLDialect
  22 +# SPRING_DRIVER_CLASS_NAME=org.postgresql.Driver
  23 +# SPRING_DATASOURCE_URL=jdbc:postgresql://postgres:5432/thingsboard
  24 +# SPRING_DATASOURCE_USERNAME=postgres
  25 +# SPRING_DATASOURCE_PASSWORD=postgres
@@ -19,4 +19,6 @@ FROM openjdk:8-jre @@ -19,4 +19,6 @@ FROM openjdk:8-jre
19 ADD run-application.sh /run-application.sh 19 ADD run-application.sh /run-application.sh
20 ADD thingsboard.deb /thingsboard.deb 20 ADD thingsboard.deb /thingsboard.deb
21 21
22 -RUN chmod +x /run-application.sh 22 +RUN apt-get update \
  23 + && apt-get install -y nmap \
  24 + && chmod +x /run-application.sh
1 -VERSION=1.2.4 1 +VERSION=1.3.0
2 PROJECT=thingsboard 2 PROJECT=thingsboard
3 APP=application 3 APP=application
4 4
@@ -9,4 +9,4 @@ build: @@ -9,4 +9,4 @@ build:
9 9
10 push: build 10 push: build
11 docker push ${PROJECT}/${APP}:${VERSION} 11 docker push ${PROJECT}/${APP}:${VERSION}
12 - docker push ${PROJECT}/${APP}:latest 12 + docker push ${PROJECT}/${APP}:latest
@@ -18,18 +18,34 @@ @@ -18,18 +18,34 @@
18 18
19 dpkg -i /thingsboard.deb 19 dpkg -i /thingsboard.deb
20 20
21 -reachable=0  
22 -while [ $reachable -eq 0 ];  
23 -do  
24 - echo "$TB_CASSANDRA_SCHEMA_URL container is still in progress. waiting until it completed..."  
25 - sleep 3  
26 - ping -q -c 1 $TB_CASSANDRA_SCHEMA_URL > /dev/null 2>&1  
27 - if [ "$?" -ne 0 ];  
28 - then  
29 - echo "$TB_CASSANDRA_SCHEMA_URL container completed!"  
30 - reachable=1  
31 - fi  
32 -done 21 +if [ "$DATABASE_TYPE" == "cassandra" ]; then
  22 + until nmap $CASSANDRA_HOST -p $CASSANDRA_PORT | grep "$CASSANDRA_PORT/tcp open"
  23 + do
  24 + echo "Wait for cassandra db to start..."
  25 + sleep 10
  26 + done
  27 +fi
  28 +
  29 +if [ "$DATABASE_TYPE" == "sql" ]; then
  30 + if [ "$SPRING_DRIVER_CLASS_NAME" == "org.postgresql.Driver" ]; then
  31 + until nmap $POSTGRES_HOST -p $POSTGRES_PORT | grep "$POSTGRES_PORT/tcp open"
  32 + do
  33 + echo "Waiting for postgres db to start..."
  34 + sleep 10
  35 + done
  36 + fi
  37 +fi
  38 +
  39 +if [ "$ADD_SCHEMA_AND_SYSTEM_DATA" == "true" ]; then
  40 + echo "Creating 'Thingsboard' schema and system data..."
  41 + if [ "$ADD_DEMO_DATA" == "true" ]; then
  42 + echo "plus demo data..."
  43 + /usr/share/thingsboard/bin/install/install.sh --loadDemo
  44 + elif [ "$ADD_DEMO_DATA" == "false" ]; then
  45 + /usr/share/thingsboard/bin/install/install.sh
  46 + fi
  47 +fi
  48 +
33 49
34 # Copying env variables into conf files 50 # Copying env variables into conf files
35 printenv | awk -F "=" '{print "export " $1 "='\''" $2 "'\''"}' >> /usr/share/thingsboard/conf/thingsboard.conf 51 printenv | awk -F "=" '{print "export " $1 "='\''" $2 "'\''"}' >> /usr/share/thingsboard/conf/thingsboard.conf
1 -VERSION=1.2.4 1 +VERSION=1.3.0
2 PROJECT=thingsboard 2 PROJECT=thingsboard
3 APP=zk 3 APP=zk
4 4