Merge pull request #227 from volodymyr-babak/master
Docker updates for new release
This commit is contained in:
commit
c0a8849784
@ -233,7 +233,7 @@ spring:
|
|||||||
jpa:
|
jpa:
|
||||||
hibernate:
|
hibernate:
|
||||||
ddl-auto: "validate"
|
ddl-auto: "validate"
|
||||||
database-platform: "org.hibernate.dialect.HSQLDialect"
|
database-platform: "${SPRING_JPA_DATABASE_PLATFORM:org.hibernate.dialect.HSQLDialect}"
|
||||||
datasource:
|
datasource:
|
||||||
driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.hsqldb.jdbc.JDBCDriver}"
|
driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.hsqldb.jdbc.JDBCDriver}"
|
||||||
url: "${SPRING_DATASOURCE_URL:jdbc:hsqldb:file:${SQL_DATA_FOLDER:/tmp}/thingsboardDb;sql.enforce_size=false}"
|
url: "${SPRING_DATASOURCE_URL:jdbc:hsqldb:file:${SQL_DATA_FOLDER:/tmp}/thingsboardDb;sql.enforce_size=false}"
|
||||||
@ -250,7 +250,7 @@ spring:
|
|||||||
# jpa:
|
# jpa:
|
||||||
# hibernate:
|
# hibernate:
|
||||||
# ddl-auto: "validate"
|
# ddl-auto: "validate"
|
||||||
# database-platform: "org.hibernate.dialect.PostgreSQLDialect"
|
# database-platform: "${SPRING_JPA_DATABASE_PLATFORM:org.hibernate.dialect.PostgreSQLDialect}"
|
||||||
# datasource:
|
# datasource:
|
||||||
# driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.postgresql.Driver}"
|
# driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.postgresql.Driver}"
|
||||||
# url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/thingsboard}"
|
# url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/thingsboard}"
|
||||||
|
|||||||
10
docker/.env
10
docker/.env
@ -1,15 +1,13 @@
|
|||||||
# cassandra environment variables
|
# cassandra environment variables
|
||||||
CASSANDRA_DATA_DIR=/home/docker/cassandra_volume
|
CASSANDRA_DATA_DIR=/home/docker/cassandra_volume
|
||||||
CASSANDRA_URL=cassandra
|
|
||||||
|
|
||||||
# postgres environment variables
|
# postgres environment variables
|
||||||
POSTGRES_DATA_DIR=/home/docker/postgres_volume
|
POSTGRES_DATA_DIR=/home/docker/postgres_volume
|
||||||
POSTGRES_DB=thingsboard
|
POSTGRES_DB=thingsboard
|
||||||
POSTGRES_USER=postgres
|
|
||||||
POSTGRES_PASSWORD=postgres
|
# hsqldb environment variables
|
||||||
POSTGRES_URL=postgres
|
HSQLDB_DATA_DIR=/home/docker/hsqldb_volume
|
||||||
|
|
||||||
# environment variables for schema init and insert system and demo data
|
# environment variables for schema init and insert system and demo data
|
||||||
CREATE_SCHEMA=true
|
ADD_SCHEMA_AND_SYSTEM_DATA=false
|
||||||
ADD_SYSTEM_DATA=false
|
|
||||||
ADD_DEMO_DATA=false
|
ADD_DEMO_DATA=false
|
||||||
@ -14,14 +14,11 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM postgres:9.6
|
FROM openjdk:8-jre
|
||||||
|
|
||||||
ADD install-schema.sh /install-schema.sh
|
ADD install.sh /install.sh
|
||||||
|
ADD thingsboard.deb /thingsboard.deb
|
||||||
|
|
||||||
RUN apt-get update \
|
RUN apt-get update \
|
||||||
&& apt-get install -y nmap \
|
&& apt-get install -y nmap \
|
||||||
&& chmod +x /install-schema.sh
|
&& chmod +x /install.sh
|
||||||
|
|
||||||
ADD schema.sql /schema.sql
|
|
||||||
ADD system-data.sql /system-data.sql
|
|
||||||
ADD demo-data.sql /demo-data.sql
|
|
||||||
12
docker/cassandra-setup/Makefile
Normal file
12
docker/cassandra-setup/Makefile
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
VERSION=1.3.0
|
||||||
|
PROJECT=thingsboard
|
||||||
|
APP=cassandra-setup
|
||||||
|
|
||||||
|
build:
|
||||||
|
cp ../../application/target/thingsboard.deb .
|
||||||
|
docker build --pull -t ${PROJECT}/${APP}:${VERSION} -t ${PROJECT}/${APP}:latest .
|
||||||
|
rm thingsboard.deb
|
||||||
|
|
||||||
|
push: build
|
||||||
|
docker push ${PROJECT}/${APP}:${VERSION}
|
||||||
|
docker push ${PROJECT}/${APP}:latest
|
||||||
23
docker/tb-cassandra-schema/Dockerfile → docker/cassandra-setup/install.sh
Normal file → Executable file
23
docker/tb-cassandra-schema/Dockerfile → docker/cassandra-setup/install.sh
Normal file → Executable file
@ -1,3 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
# Copyright © 2016-2017 The Thingsboard Authors
|
# Copyright © 2016-2017 The Thingsboard Authors
|
||||||
#
|
#
|
||||||
@ -14,15 +15,19 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM cassandra:3.9
|
|
||||||
|
|
||||||
ADD install-schema.sh /install-schema.sh
|
dpkg -i /thingsboard.deb
|
||||||
|
|
||||||
RUN apt-get update \
|
until nmap $CASSANDRA_HOST -p $CASSANDRA_PORT | grep "$CASSANDRA_PORT/tcp open"
|
||||||
&& apt-get install -y nmap \
|
do
|
||||||
&& chmod +x /install-schema.sh
|
echo "Wait for cassandra db to start..."
|
||||||
|
sleep 10
|
||||||
ADD schema.cql /schema.cql
|
done
|
||||||
ADD demo-data.cql /demo-data.cql
|
|
||||||
ADD system-data.cql /system-data.cql
|
|
||||||
|
|
||||||
|
echo "Creating 'Thingsboard' schema and system data..."
|
||||||
|
if [ "$ADD_DEMO_DATA" == "true" ]; then
|
||||||
|
echo "plus demo data..."
|
||||||
|
/usr/share/thingsboard/bin/install/install.sh --loadDemo
|
||||||
|
elif [ "$ADD_DEMO_DATA" == "false" ]; then
|
||||||
|
/usr/share/thingsboard/bin/install/install.sh
|
||||||
|
fi
|
||||||
@ -1,4 +1,4 @@
|
|||||||
VERSION=1.2.4
|
VERSION=1.3.0
|
||||||
PROJECT=thingsboard
|
PROJECT=thingsboard
|
||||||
APP=cassandra
|
APP=cassandra
|
||||||
|
|
||||||
@ -7,4 +7,4 @@ build:
|
|||||||
|
|
||||||
push: build
|
push: build
|
||||||
docker push ${PROJECT}/${APP}:${VERSION}
|
docker push ${PROJECT}/${APP}:${VERSION}
|
||||||
docker push ${PROJECT}/${APP}:latest
|
docker push ${PROJECT}/${APP}:latest
|
||||||
|
|||||||
@ -18,22 +18,19 @@ version: '2'
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
tb:
|
tb:
|
||||||
image: "thingsboard/application:1.2.4"
|
image: "thingsboard/application:1.3.0"
|
||||||
ports:
|
ports:
|
||||||
- "8080:8080"
|
- "8080:8080"
|
||||||
- "1883:1883"
|
- "1883:1883"
|
||||||
- "5683:5683/udp"
|
- "5683:5683/udp"
|
||||||
env_file:
|
env_file:
|
||||||
- tb.env
|
- tb.env
|
||||||
entrypoint: /run-application.sh
|
|
||||||
tb-cassandra-schema:
|
|
||||||
image: "thingsboard/tb-cassandra-schema:1.2.4"
|
|
||||||
environment:
|
environment:
|
||||||
- CREATE_SCHEMA=${CREATE_SCHEMA}
|
- ADD_SCHEMA_AND_SYSTEM_DATA=${ADD_SCHEMA_AND_SYSTEM_DATA}
|
||||||
- ADD_SYSTEM_DATA=${ADD_SYSTEM_DATA}
|
|
||||||
- ADD_DEMO_DATA=${ADD_DEMO_DATA}
|
- ADD_DEMO_DATA=${ADD_DEMO_DATA}
|
||||||
- CASSANDRA_URL=${CASSANDRA_URL}
|
volumes:
|
||||||
entrypoint: /install-schema.sh
|
- "${HSQLDB_DATA_DIR}:/usr/share/thingsboard/data/sql"
|
||||||
|
entrypoint: /run-application.sh
|
||||||
cassandra:
|
cassandra:
|
||||||
image: "cassandra:3.9"
|
image: "cassandra:3.9"
|
||||||
ports:
|
ports:
|
||||||
@ -52,18 +49,5 @@ services:
|
|||||||
- "5432"
|
- "5432"
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_DB=${POSTGRES_DB}
|
- POSTGRES_DB=${POSTGRES_DB}
|
||||||
- POSTGRES_USER=${POSTGRES_USER}
|
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
||||||
volumes:
|
volumes:
|
||||||
- "${POSTGRES_DATA_DIR}:/var/lib/postgresql/data"
|
- "${POSTGRES_DATA_DIR}:/var/lib/postgresql/data"
|
||||||
tb-postgres-schema:
|
|
||||||
image: "thingsboard/tb-postgres-schema:1.2.4"
|
|
||||||
environment:
|
|
||||||
- POSTGRES_URL=${POSTGRES_URL}
|
|
||||||
- POSTGRES_DB=${POSTGRES_DB}
|
|
||||||
- POSTGRES_USER=${POSTGRES_USER}
|
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
||||||
- CREATE_SCHEMA=${CREATE_SCHEMA}
|
|
||||||
- ADD_SYSTEM_DATA=${ADD_SYSTEM_DATA}
|
|
||||||
- ADD_DEMO_DATA=${ADD_DEMO_DATA}
|
|
||||||
entrypoint: /install-schema.sh
|
|
||||||
@ -17,23 +17,25 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Pod
|
kind: Pod
|
||||||
metadata:
|
metadata:
|
||||||
name: tb-cassandra-schema
|
name: cassandra-setup
|
||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- name: tb-cassandra-schema
|
- name: cassandra-setup
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
image: thingsboard/tb-cassandra-schema:1.2.4
|
image: thingsboard/cassandra-setup:1.3.0
|
||||||
env:
|
env:
|
||||||
- name: CREATE_SCHEMA
|
- name: ADD_DEMO_DATA
|
||||||
value: "true"
|
value: "true"
|
||||||
- name: ADD_SYSTEM_DATA
|
- name : CASSANDRA_HOST
|
||||||
value: "true"
|
|
||||||
- name : ADD_DEMO_DATA
|
|
||||||
value: "true"
|
|
||||||
- name : CASSANDRA_URL
|
|
||||||
value: "cassandra-headless"
|
value: "cassandra-headless"
|
||||||
|
- name : CASSANDRA_PORT
|
||||||
|
value: "9042"
|
||||||
|
- name : DATABASE_TYPE
|
||||||
|
value: "cassandra"
|
||||||
|
- name : CASSANDRA_URL
|
||||||
|
value: "cassandra-headless:9042"
|
||||||
command:
|
command:
|
||||||
- sh
|
- sh
|
||||||
- -c
|
- -c
|
||||||
- /install-schema.sh
|
- /install.sh
|
||||||
restartPolicy: Never
|
restartPolicy: Never
|
||||||
@ -54,7 +54,7 @@ spec:
|
|||||||
topologyKey: "kubernetes.io/hostname"
|
topologyKey: "kubernetes.io/hostname"
|
||||||
containers:
|
containers:
|
||||||
- name: cassandra
|
- name: cassandra
|
||||||
image: thingsboard/cassandra:1.2.4
|
image: thingsboard/cassandra:1.3.0
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 7000
|
- containerPort: 7000
|
||||||
@ -51,6 +51,9 @@ data:
|
|||||||
zookeeper.enabled: "true"
|
zookeeper.enabled: "true"
|
||||||
zookeeper.url: "zk-headless"
|
zookeeper.url: "zk-headless"
|
||||||
cassandra.url: "cassandra-headless:9042"
|
cassandra.url: "cassandra-headless:9042"
|
||||||
|
cassandra.host: "cassandra-headless"
|
||||||
|
cassandra.port: "9042"
|
||||||
|
database.type: "cassandra"
|
||||||
---
|
---
|
||||||
apiVersion: apps/v1beta1
|
apiVersion: apps/v1beta1
|
||||||
kind: StatefulSet
|
kind: StatefulSet
|
||||||
@ -79,7 +82,7 @@ spec:
|
|||||||
containers:
|
containers:
|
||||||
- name: tb
|
- name: tb
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
image: thingsboard/application:1.2.4
|
image: thingsboard/application:1.3.0
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 8080
|
- containerPort: 8080
|
||||||
name: ui
|
name: ui
|
||||||
@ -100,11 +103,26 @@ spec:
|
|||||||
configMapKeyRef:
|
configMapKeyRef:
|
||||||
name: tb-config
|
name: tb-config
|
||||||
key: zookeeper.url
|
key: zookeeper.url
|
||||||
|
- name : CASSANDRA_HOST
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: tb-config
|
||||||
|
key: cassandra.host
|
||||||
|
- name : CASSANDRA_PORT
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: tb-config
|
||||||
|
key: cassandra.port
|
||||||
- name : CASSANDRA_URL
|
- name : CASSANDRA_URL
|
||||||
valueFrom:
|
valueFrom:
|
||||||
configMapKeyRef:
|
configMapKeyRef:
|
||||||
name: tb-config
|
name: tb-config
|
||||||
key: cassandra.url
|
key: cassandra.url
|
||||||
|
- name: DATABASE_TYPE
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: tb-config
|
||||||
|
key: database.type
|
||||||
- name : RPC_HOST
|
- name : RPC_HOST
|
||||||
valueFrom:
|
valueFrom:
|
||||||
fieldRef:
|
fieldRef:
|
||||||
@ -87,7 +87,7 @@ spec:
|
|||||||
containers:
|
containers:
|
||||||
- name: zk
|
- name: zk
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
image: thingsboard/zk:1.2.4
|
image: thingsboard/zk:1.3.0
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 2181
|
- containerPort: 2181
|
||||||
name: client
|
name: client
|
||||||
@ -1,14 +0,0 @@
|
|||||||
VERSION=1.2.4
|
|
||||||
PROJECT=thingsboard
|
|
||||||
APP=tb-cassandra-schema
|
|
||||||
|
|
||||||
build:
|
|
||||||
cp ../../dao/src/main/resources/cassandra/schema.cql .
|
|
||||||
cp ../../dao/src/main/resources/cassandra/demo-data.cql .
|
|
||||||
cp ../../dao/src/main/resources/cassandra/system-data.cql .
|
|
||||||
docker build --pull -t ${PROJECT}/${APP}:${VERSION} -t ${PROJECT}/${APP}:latest .
|
|
||||||
rm schema.cql demo-data.cql system-data.cql
|
|
||||||
|
|
||||||
push: build
|
|
||||||
docker push ${PROJECT}/${APP}:${VERSION}
|
|
||||||
docker push ${PROJECT}/${APP}:latest
|
|
||||||
@ -1,53 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
# Copyright © 2016-2017 The Thingsboard Authors
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
|
|
||||||
until nmap $CASSANDRA_URL -p 9042 | grep "9042/tcp open"
|
|
||||||
do
|
|
||||||
echo "Wait for $CASSANDRA_URL..."
|
|
||||||
sleep 10
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "$CREATE_SCHEMA" == "true" ]; then
|
|
||||||
echo "Creating 'Thingsboard' keyspace..."
|
|
||||||
cqlsh $CASSANDRA_URL -f /schema.cql
|
|
||||||
if [ "$?" -eq 0 ]; then
|
|
||||||
echo "'Thingsboard' keyspace was successfully created!"
|
|
||||||
else
|
|
||||||
echo "There were issues while creating 'Thingsboard' keyspace!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$ADD_SYSTEM_DATA" == "true" ]; then
|
|
||||||
echo "Adding system data..."
|
|
||||||
cqlsh $CASSANDRA_URL -f /system-data.cql
|
|
||||||
if [ "$?" -eq 0 ]; then
|
|
||||||
echo "System data was successfully added!"
|
|
||||||
else
|
|
||||||
echo "There were issues while adding System data!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$ADD_DEMO_DATA" == "true" ]; then
|
|
||||||
echo "Adding demo data..."
|
|
||||||
cqlsh $CASSANDRA_URL -f /demo-data.cql
|
|
||||||
if [ "$?" -eq 0 ]; then
|
|
||||||
echo "Demo data was successfully added!"
|
|
||||||
else
|
|
||||||
echo "There were issues while adding Demo data!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
VERSION=1.2.4
|
|
||||||
PROJECT=thingsboard
|
|
||||||
APP=tb-postgres-schema
|
|
||||||
|
|
||||||
build:
|
|
||||||
cp ../../dao/src/main/resources/postgres/schema.sql .
|
|
||||||
cp ../../dao/src/main/resources/postgres/demo-data.sql .
|
|
||||||
cp ../../dao/src/main/resources/postgres/system-data.sql .
|
|
||||||
docker build --pull -t ${PROJECT}/${APP}:${VERSION} -t ${PROJECT}/${APP}:latest .
|
|
||||||
rm schema.sql demo-data.sql system-data.sql
|
|
||||||
|
|
||||||
push: build
|
|
||||||
docker push ${PROJECT}/${APP}:${VERSION}
|
|
||||||
docker push ${PROJECT}/${APP}:latest
|
|
||||||
@ -1,52 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
# Copyright © 2016-2017 The Thingsboard Authors
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
until nmap $POSTGRES_URL -p 5432 | grep "5432/tcp open"
|
|
||||||
do
|
|
||||||
echo "Waiting for $POSTGRES_URL..."
|
|
||||||
sleep 10
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "$CREATE_SCHEMA" == "true" ]; then
|
|
||||||
echo "Creating 'Thingsboard' database schema..."
|
|
||||||
PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$POSTGRES_URL" -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" -f /schema.sql
|
|
||||||
if [ "$?" -eq 0 ]; then
|
|
||||||
echo "'Thingsboard' database schema was successfully created!"
|
|
||||||
else
|
|
||||||
echo "There were issues while creating 'Thingsboard' database schema!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$ADD_SYSTEM_DATA" == "true" ]; then
|
|
||||||
echo "Adding system data..."
|
|
||||||
PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$POSTGRES_URL" -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" -f /system-data.sql
|
|
||||||
if [ "$?" -eq 0 ]; then
|
|
||||||
echo "System data was successfully added!"
|
|
||||||
else
|
|
||||||
echo "There were issues while adding System data!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$ADD_DEMO_DATA" == "true" ]; then
|
|
||||||
echo "Adding demo data..."
|
|
||||||
PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$POSTGRES_URL" -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" -f /demo-data.sql
|
|
||||||
if [ "$?" -eq 0 ]; then
|
|
||||||
echo "Demo data was successfully added!"
|
|
||||||
else
|
|
||||||
echo "There were issues while adding Demo data!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
@ -1,9 +1,25 @@
|
|||||||
#Thingsboard server configuration
|
#Thingsboard server configuration
|
||||||
|
|
||||||
TB_CASSANDRA_SCHEMA_URL=tb-cassandra-schema
|
|
||||||
CASSANDRA_URL=cassandra:9042
|
|
||||||
ZOOKEEPER_URL=zk:2181
|
|
||||||
MQTT_BIND_ADDRESS=0.0.0.0
|
MQTT_BIND_ADDRESS=0.0.0.0
|
||||||
MQTT_BIND_PORT=1883
|
MQTT_BIND_PORT=1883
|
||||||
COAP_BIND_ADDRESS=0.0.0.0
|
COAP_BIND_ADDRESS=0.0.0.0
|
||||||
COAP_BIND_PORT=5683
|
COAP_BIND_PORT=5683
|
||||||
|
|
||||||
|
# zk config
|
||||||
|
ZOOKEEPER_URL=zk:2181
|
||||||
|
|
||||||
|
# type of database to use: sql[DEFAULT] or cassandra
|
||||||
|
DATABASE_TYPE=sql
|
||||||
|
|
||||||
|
# cassandra db config
|
||||||
|
CASSANDRA_URL=cassandra:9042
|
||||||
|
CASSANDRA_HOST=cassandra
|
||||||
|
CASSANDRA_PORT=9042
|
||||||
|
|
||||||
|
# postgres db config
|
||||||
|
POSTGRES_HOST=cassandra
|
||||||
|
POSTGRES_PORT=9042
|
||||||
|
# SPRING_JPA_DATABASE_PLATFORM=org.hibernate.dialect.PostgreSQLDialect
|
||||||
|
# SPRING_DRIVER_CLASS_NAME=org.postgresql.Driver
|
||||||
|
# SPRING_DATASOURCE_URL=jdbc:postgresql://postgres:5432/thingsboard
|
||||||
|
# SPRING_DATASOURCE_USERNAME=postgres
|
||||||
|
# SPRING_DATASOURCE_PASSWORD=postgres
|
||||||
|
|||||||
@ -19,4 +19,6 @@ FROM openjdk:8-jre
|
|||||||
ADD run-application.sh /run-application.sh
|
ADD run-application.sh /run-application.sh
|
||||||
ADD thingsboard.deb /thingsboard.deb
|
ADD thingsboard.deb /thingsboard.deb
|
||||||
|
|
||||||
RUN chmod +x /run-application.sh
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y nmap \
|
||||||
|
&& chmod +x /run-application.sh
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
VERSION=1.2.4
|
VERSION=1.3.0
|
||||||
PROJECT=thingsboard
|
PROJECT=thingsboard
|
||||||
APP=application
|
APP=application
|
||||||
|
|
||||||
@ -9,4 +9,4 @@ build:
|
|||||||
|
|
||||||
push: build
|
push: build
|
||||||
docker push ${PROJECT}/${APP}:${VERSION}
|
docker push ${PROJECT}/${APP}:${VERSION}
|
||||||
docker push ${PROJECT}/${APP}:latest
|
docker push ${PROJECT}/${APP}:latest
|
||||||
|
|||||||
@ -18,18 +18,34 @@
|
|||||||
|
|
||||||
dpkg -i /thingsboard.deb
|
dpkg -i /thingsboard.deb
|
||||||
|
|
||||||
reachable=0
|
if [ "$DATABASE_TYPE" == "cassandra" ]; then
|
||||||
while [ $reachable -eq 0 ];
|
until nmap $CASSANDRA_HOST -p $CASSANDRA_PORT | grep "$CASSANDRA_PORT/tcp open"
|
||||||
do
|
do
|
||||||
echo "$TB_CASSANDRA_SCHEMA_URL container is still in progress. waiting until it completed..."
|
echo "Wait for cassandra db to start..."
|
||||||
sleep 3
|
sleep 10
|
||||||
ping -q -c 1 $TB_CASSANDRA_SCHEMA_URL > /dev/null 2>&1
|
done
|
||||||
if [ "$?" -ne 0 ];
|
fi
|
||||||
then
|
|
||||||
echo "$TB_CASSANDRA_SCHEMA_URL container completed!"
|
if [ "$DATABASE_TYPE" == "sql" ]; then
|
||||||
reachable=1
|
if [ "$SPRING_DRIVER_CLASS_NAME" == "org.postgresql.Driver" ]; then
|
||||||
fi
|
until nmap $POSTGRES_HOST -p $POSTGRES_PORT | grep "$POSTGRES_PORT/tcp open"
|
||||||
done
|
do
|
||||||
|
echo "Waiting for postgres db to start..."
|
||||||
|
sleep 10
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ADD_SCHEMA_AND_SYSTEM_DATA" == "true" ]; then
|
||||||
|
echo "Creating 'Thingsboard' schema and system data..."
|
||||||
|
if [ "$ADD_DEMO_DATA" == "true" ]; then
|
||||||
|
echo "plus demo data..."
|
||||||
|
/usr/share/thingsboard/bin/install/install.sh --loadDemo
|
||||||
|
elif [ "$ADD_DEMO_DATA" == "false" ]; then
|
||||||
|
/usr/share/thingsboard/bin/install/install.sh
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
# Copying env variables into conf files
|
# Copying env variables into conf files
|
||||||
printenv | awk -F "=" '{print "export " $1 "='\''" $2 "'\''"}' >> /usr/share/thingsboard/conf/thingsboard.conf
|
printenv | awk -F "=" '{print "export " $1 "='\''" $2 "'\''"}' >> /usr/share/thingsboard/conf/thingsboard.conf
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
VERSION=1.2.4
|
VERSION=1.3.0
|
||||||
PROJECT=thingsboard
|
PROJECT=thingsboard
|
||||||
APP=zk
|
APP=zk
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user