31 changed files with 572 additions and 123 deletions
@ -0,0 +1,5 @@ |
|||||
|
CACHE_TYPE=redis |
||||
|
REDIS_CONNECTION_TYPE=cluster |
||||
|
REDIS_NODES=redis-node-0:6379,redis-node-1:6379,redis-node-2:6379,redis-node-3:6379,redis-node-4:6379,redis-node-5:6379 |
||||
|
REDIS_USE_DEFAULT_POOL_CONFIG=false |
||||
|
REDIS_PASSWORD=thingsboard |
||||
@ -0,0 +1,2 @@ |
|||||
|
CACHE_TYPE=redis |
||||
|
REDIS_HOST=redis |
||||
@ -0,0 +1,58 @@ |
|||||
|
# |
||||
|
# Copyright © 2016-2022 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. |
||||
|
# |
||||
|
|
||||
|
version: '2.2' |
||||
|
|
||||
|
services: |
||||
|
# Redis cluster |
||||
|
redis-node-0: |
||||
|
volumes: |
||||
|
- redis-cluster-data-0:/bitnami/redis/data |
||||
|
redis-node-1: |
||||
|
volumes: |
||||
|
- redis-cluster-data-1:/bitnami/redis/data |
||||
|
redis-node-2: |
||||
|
volumes: |
||||
|
- redis-cluster-data-2:/bitnami/redis/data |
||||
|
redis-node-3: |
||||
|
volumes: |
||||
|
- redis-cluster-data-3:/bitnami/redis/data |
||||
|
redis-node-4: |
||||
|
volumes: |
||||
|
- redis-cluster-data-4:/bitnami/redis/data |
||||
|
redis-node-5: |
||||
|
volumes: |
||||
|
- redis-cluster-data-5:/bitnami/redis/data |
||||
|
|
||||
|
volumes: |
||||
|
redis-cluster-data-0: |
||||
|
external: true |
||||
|
name: ${REDIS_CLUSTER_DATA_VOLUME_0} |
||||
|
redis-cluster-data-1: |
||||
|
external: true |
||||
|
name: ${REDIS_CLUSTER_DATA_VOLUME_1} |
||||
|
redis-cluster-data-2: |
||||
|
external: true |
||||
|
name: ${REDIS_CLUSTER_DATA_VOLUME_2} |
||||
|
redis-cluster-data-3: |
||||
|
external: true |
||||
|
name: ${REDIS_CLUSTER_DATA_VOLUME_3} |
||||
|
redis-cluster-data-4: |
||||
|
external: true |
||||
|
name: ${REDIS_CLUSTER_DATA_VOLUME_4} |
||||
|
redis-cluster-data-5: |
||||
|
external: true |
||||
|
name: ${REDIS_CLUSTER_DATA_VOLUME_5} |
||||
@ -0,0 +1,148 @@ |
|||||
|
# |
||||
|
# Copyright © 2016-2022 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. |
||||
|
# |
||||
|
|
||||
|
version: '2.2' |
||||
|
|
||||
|
services: |
||||
|
# Redis cluster |
||||
|
redis-node-0: |
||||
|
image: bitnami/redis-cluster:7.0 |
||||
|
volumes: |
||||
|
- ./tb-node/redis-cluster-data-0:/bitnami/redis/data |
||||
|
environment: |
||||
|
- 'REDIS_PASSWORD=thingsboard' |
||||
|
- 'REDISCLI_AUTH=thingsboard' |
||||
|
- 'REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5' |
||||
|
|
||||
|
redis-node-1: |
||||
|
image: bitnami/redis-cluster:7.0 |
||||
|
volumes: |
||||
|
- ./tb-node/redis-cluster-data-1:/bitnami/redis/data |
||||
|
environment: |
||||
|
- 'REDIS_PASSWORD=thingsboard' |
||||
|
- 'REDISCLI_AUTH=thingsboard' |
||||
|
- 'REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5' |
||||
|
|
||||
|
redis-node-2: |
||||
|
image: bitnami/redis-cluster:7.0 |
||||
|
volumes: |
||||
|
- ./tb-node/redis-cluster-data-2:/bitnami/redis/data |
||||
|
environment: |
||||
|
- 'REDIS_PASSWORD=thingsboard' |
||||
|
- 'REDISCLI_AUTH=thingsboard' |
||||
|
- 'REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5' |
||||
|
|
||||
|
redis-node-3: |
||||
|
image: bitnami/redis-cluster:7.0 |
||||
|
volumes: |
||||
|
- ./tb-node/redis-cluster-data-3:/bitnami/redis/data |
||||
|
environment: |
||||
|
- 'REDIS_PASSWORD=thingsboard' |
||||
|
- 'REDISCLI_AUTH=thingsboard' |
||||
|
- 'REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5' |
||||
|
|
||||
|
redis-node-4: |
||||
|
image: bitnami/redis-cluster:7.0 |
||||
|
volumes: |
||||
|
- ./tb-node/redis-cluster-data-4:/bitnami/redis/data |
||||
|
environment: |
||||
|
- 'REDIS_PASSWORD=thingsboard' |
||||
|
- 'REDISCLI_AUTH=thingsboard' |
||||
|
- 'REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5' |
||||
|
|
||||
|
redis-node-5: |
||||
|
image: bitnami/redis-cluster:7.0 |
||||
|
volumes: |
||||
|
- ./tb-node/redis-cluster-data-5:/bitnami/redis/data |
||||
|
depends_on: |
||||
|
- redis-node-0 |
||||
|
- redis-node-1 |
||||
|
- redis-node-2 |
||||
|
- redis-node-3 |
||||
|
- redis-node-4 |
||||
|
environment: |
||||
|
- 'REDIS_PASSWORD=thingsboard' |
||||
|
- 'REDISCLI_AUTH=thingsboard' |
||||
|
- 'REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5' |
||||
|
- 'REDIS_CLUSTER_REPLICAS=1' |
||||
|
- 'REDIS_CLUSTER_CREATOR=yes' |
||||
|
|
||||
|
# ThingsBoard setup to use redis-cluster |
||||
|
tb-core1: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-core2: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-rule-engine1: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-rule-engine2: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-mqtt-transport1: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-mqtt-transport2: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-http-transport1: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-http-transport2: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-coap-transport: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-lwm2m-transport: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-snmp-transport: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-vc-executor1: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
|
tb-vc-executor2: |
||||
|
env_file: |
||||
|
- cache-redis-cluster.env |
||||
|
depends_on: |
||||
|
- redis-node-5 |
||||
@ -0,0 +1,27 @@ |
|||||
|
# |
||||
|
# Copyright © 2016-2022 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. |
||||
|
# |
||||
|
|
||||
|
version: '2.2' |
||||
|
|
||||
|
services: |
||||
|
redis: |
||||
|
volumes: |
||||
|
- redis-data:/bitnami/redis/data |
||||
|
|
||||
|
volumes: |
||||
|
redis-data: |
||||
|
external: true |
||||
|
name: ${REDIS_DATA_VOLUME} |
||||
@ -0,0 +1,97 @@ |
|||||
|
# |
||||
|
# Copyright © 2016-2022 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. |
||||
|
# |
||||
|
|
||||
|
version: '2.2' |
||||
|
|
||||
|
services: |
||||
|
# Redis standalone |
||||
|
redis: |
||||
|
restart: always |
||||
|
image: bitnami/redis:7.0 |
||||
|
environment: |
||||
|
# ALLOW_EMPTY_PASSWORD is recommended only for development. |
||||
|
ALLOW_EMPTY_PASSWORD: "yes" |
||||
|
ports: |
||||
|
- '6379:6379' |
||||
|
volumes: |
||||
|
- ./tb-node/redis-data:/bitnami/redis/data |
||||
|
|
||||
|
# ThingsBoard setup to use redis-standalone |
||||
|
tb-core1: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-core2: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-rule-engine1: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-rule-engine2: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-mqtt-transport1: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-mqtt-transport2: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-http-transport1: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-http-transport2: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-coap-transport: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-lwm2m-transport: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-snmp-transport: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-vc-executor1: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
|
tb-vc-executor2: |
||||
|
env_file: |
||||
|
- cache-redis.env |
||||
|
depends_on: |
||||
|
- redis |
||||
@ -0,0 +1,81 @@ |
|||||
|
# |
||||
|
# Copyright © 2016-2022 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. |
||||
|
# |
||||
|
|
||||
|
version: '2.2' |
||||
|
|
||||
|
services: |
||||
|
tb-core1: |
||||
|
volumes: |
||||
|
- tb-log-volume:/var/log/thingsboard |
||||
|
tb-core2: |
||||
|
volumes: |
||||
|
- tb-log-volume:/var/log/thingsboard |
||||
|
tb-rule-engine1: |
||||
|
volumes: |
||||
|
- tb-log-volume:/var/log/thingsboard |
||||
|
tb-rule-engine2: |
||||
|
volumes: |
||||
|
- tb-log-volume:/var/log/thingsboard |
||||
|
tb-coap-transport: |
||||
|
volumes: |
||||
|
- tb-coap-transport-log-volume:/var/log/tb-coap-transport |
||||
|
tb-lwm2m-transport: |
||||
|
volumes: |
||||
|
- tb-lwm2m-transport-log-volume:/var/log/tb-lwm2m-transport |
||||
|
tb-http-transport1: |
||||
|
volumes: |
||||
|
- tb-http-transport-log-volume:/var/log/tb-http-transport |
||||
|
tb-http-transport2: |
||||
|
volumes: |
||||
|
- tb-http-transport-log-volume:/var/log/tb-http-transport |
||||
|
tb-mqtt-transport1: |
||||
|
volumes: |
||||
|
- tb-mqtt-transport-log-volume:/var/log/tb-mqtt-transport |
||||
|
tb-mqtt-transport2: |
||||
|
volumes: |
||||
|
- tb-mqtt-transport-log-volume:/var/log/tb-mqtt-transport |
||||
|
tb-snmp-transport: |
||||
|
volumes: |
||||
|
- tb-snmp-transport-log-volume:/var/log/tb-snmp-transport |
||||
|
tb-vc-executor1: |
||||
|
volumes: |
||||
|
- tb-vc-executor-log-volume:/var/log/tb-vc-executor |
||||
|
tb-vc-executor2: |
||||
|
volumes: |
||||
|
- tb-vc-executor-log-volume:/var/log/tb-vc-executor |
||||
|
|
||||
|
volumes: |
||||
|
tb-log-volume: |
||||
|
external: true |
||||
|
name: ${TB_LOG_VOLUME} |
||||
|
tb-coap-transport-log-volume: |
||||
|
external: true |
||||
|
name: ${TB_COAP_TRANSPORT_LOG_VOLUME} |
||||
|
tb-lwm2m-transport-log-volume: |
||||
|
external: true |
||||
|
name: ${TB_LWM2M_TRANSPORT_LOG_VOLUME} |
||||
|
tb-http-transport-log-volume: |
||||
|
external: true |
||||
|
name: ${TB_HTTP_TRANSPORT_LOG_VOLUME} |
||||
|
tb-mqtt-transport-log-volume: |
||||
|
external: true |
||||
|
name: ${TB_MQTT_TRANSPORT_LOG_VOLUME} |
||||
|
tb-snmp-transport-log-volume: |
||||
|
external: true |
||||
|
name: ${TB_SNMP_TRANSPORT_LOG_VOLUME} |
||||
|
tb-vc-executor-log-volume: |
||||
|
external: true |
||||
|
name: ${TB_VC_EXECUTOR_LOG_VOLUME} |
||||
Loading…
Reference in new issue