docker-compose shell scripts: added CACHE=redis or CACHE=redis-cluster option. Default is redis, README.md updated
This commit is contained in:
parent
d7c750f64e
commit
7b88a437dc
@ -1,5 +1,8 @@
|
||||
TB_QUEUE_TYPE=kafka
|
||||
|
||||
# redis or redis-cluster
|
||||
CACHE=redis
|
||||
|
||||
DOCKER_REPO=thingsboard
|
||||
|
||||
JS_EXECUTOR_DOCKER_NAME=tb-js-executor
|
||||
|
||||
@ -17,6 +17,13 @@ In order to set database type change the value of `DATABASE` variable in `.env`
|
||||
|
||||
**NOTE**: According to the database type corresponding docker service will be deployed (see `docker-compose.postgres.yml`, `docker-compose.hybrid.yml` for details).
|
||||
|
||||
In order to set cache type change the value of `CACHE` variable in `.env` file to one of the following:
|
||||
|
||||
- `redis` - use Redis standalone cache (1 node - 1 master);
|
||||
- `redis-cluster` - use Redis cluster cache (6 nodes - 3 masters, 3 slaves);
|
||||
|
||||
**NOTE**: According to the cache type corresponding docker service will be deployed (see `docker-compose.redis.yml`, `docker-compose.redis-cluster.yml` for details).
|
||||
|
||||
Execute the following command to create log folders for the services and chown of these folders to the docker container users.
|
||||
To be able to change user, **chown** command is used, which requires sudo permissions (script will request password for a sudo access):
|
||||
|
||||
|
||||
@ -73,19 +73,51 @@ function additionalComposeMonitoringArgs() {
|
||||
fi
|
||||
}
|
||||
|
||||
function additionalComposeCacheArgs() {
|
||||
source .env
|
||||
CACHE_COMPOSE_ARGS=""
|
||||
CACHE="${CACHE:-redis}"
|
||||
case $CACHE in
|
||||
redis)
|
||||
CACHE_COMPOSE_ARGS="-f docker-compose.redis.yml"
|
||||
;;
|
||||
redis-cluster)
|
||||
CACHE_COMPOSE_ARGS="-f docker-compose.redis-cluster.yml"
|
||||
;;
|
||||
*)
|
||||
echo "Unknown CACHE value specified: '${CACHE}'. Should be either redis or redis-cluster." >&2
|
||||
exit 1
|
||||
esac
|
||||
echo $CACHE_COMPOSE_ARGS
|
||||
}
|
||||
|
||||
function additionalStartupServices() {
|
||||
source .env
|
||||
ADDITIONAL_STARTUP_SERVICES=""
|
||||
case $DATABASE in
|
||||
postgres)
|
||||
ADDITIONAL_STARTUP_SERVICES=postgres
|
||||
ADDITIONAL_STARTUP_SERVICES="$ADDITIONAL_STARTUP_SERVICES postgres"
|
||||
;;
|
||||
hybrid)
|
||||
ADDITIONAL_STARTUP_SERVICES="postgres cassandra"
|
||||
ADDITIONAL_STARTUP_SERVICES="$ADDITIONAL_STARTUP_SERVICES postgres cassandra"
|
||||
;;
|
||||
*)
|
||||
echo "Unknown DATABASE value specified: '${DATABASE}'. Should be either postgres or hybrid." >&2
|
||||
exit 1
|
||||
esac
|
||||
|
||||
CACHE="${CACHE:-redis}"
|
||||
case $CACHE in
|
||||
redis)
|
||||
ADDITIONAL_STARTUP_SERVICES="$ADDITIONAL_STARTUP_SERVICES redis"
|
||||
;;
|
||||
redis-cluster)
|
||||
ADDITIONAL_STARTUP_SERVICES="$ADDITIONAL_STARTUP_SERVICES redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5"
|
||||
;;
|
||||
*)
|
||||
echo "Unknown CACHE value specified: '${CACHE}'. Should be either redis or redis-cluster." >&2
|
||||
exit 1
|
||||
esac
|
||||
|
||||
echo $ADDITIONAL_STARTUP_SERVICES
|
||||
}
|
||||
|
||||
@ -28,3 +28,24 @@ mkdir -p tb-transports/mqtt/log && sudo chown -R 799:799 tb-transports/mqtt/log
|
||||
mkdir -p tb-transports/snmp/log && sudo chown -R 799:799 tb-transports/snmp/log
|
||||
|
||||
mkdir -p tb-vc-executor/log && sudo chown -R 799:799 tb-vc-executor/log
|
||||
|
||||
mkdir -p tb-node/postgres/ && sudo chown -R 999:999 tb-node/postgres/
|
||||
|
||||
source .env
|
||||
CACHE="${CACHE:-redis}"
|
||||
case $CACHE in
|
||||
redis)
|
||||
mkdir -p tb-node/redis-data/ && sudo chown -R 1001:0 tb-node/redis-data/
|
||||
;;
|
||||
redis-cluster)
|
||||
mkdir -p tb-node/redis-cluster-data-0/ && sudo chown -R 1001:0 tb-node/redis-cluster-data-0/
|
||||
mkdir -p tb-node/redis-cluster-data-1/ && sudo chown -R 1001:0 tb-node/redis-cluster-data-1/
|
||||
mkdir -p tb-node/redis-cluster-data-2/ && sudo chown -R 1001:0 tb-node/redis-cluster-data-2/
|
||||
mkdir -p tb-node/redis-cluster-data-3/ && sudo chown -R 1001:0 tb-node/redis-cluster-data-3/
|
||||
mkdir -p tb-node/redis-cluster-data-4/ && sudo chown -R 1001:0 tb-node/redis-cluster-data-4/
|
||||
mkdir -p tb-node/redis-cluster-data-5/ && sudo chown -R 1001:0 tb-node/redis-cluster-data-5/
|
||||
;;
|
||||
*)
|
||||
echo "Unknown CACHE value specified: '${CACHE}'. Should be either redis or redis-cluster." >&2
|
||||
exit 1
|
||||
esac
|
||||
@ -45,12 +45,14 @@ ADDITIONAL_COMPOSE_QUEUE_ARGS=$(additionalComposeQueueArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_ARGS=$(additionalComposeArgs) || exit $?
|
||||
|
||||
ADDITIONAL_CACHE_ARGS=$(additionalComposeCacheArgs) || exit $?
|
||||
|
||||
ADDITIONAL_STARTUP_SERVICES=$(additionalStartupServices) || exit $?
|
||||
|
||||
if [ ! -z "${ADDITIONAL_STARTUP_SERVICES// }" ]; then
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS up -d redis $ADDITIONAL_STARTUP_SERVICES
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS up -d $ADDITIONAL_STARTUP_SERVICES
|
||||
fi
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS run --no-deps --rm -e INSTALL_TB=true -e LOAD_DEMO=${loadDemo} tb-core1
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS run --no-deps --rm -e INSTALL_TB=true -e LOAD_DEMO=${loadDemo} tb-core1
|
||||
|
||||
|
||||
|
||||
@ -23,6 +23,8 @@ ADDITIONAL_COMPOSE_QUEUE_ARGS=$(additionalComposeQueueArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_ARGS=$(additionalComposeArgs) || exit $?
|
||||
|
||||
ADDITIONAL_CACHE_ARGS=$(additionalComposeCacheArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_MONITORING_ARGS=$(additionalComposeMonitoringArgs) || exit $?
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS $ADDITIONAL_COMPOSE_MONITORING_ARGS down -v
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS $ADDITIONAL_COMPOSE_MONITORING_ARGS down -v
|
||||
|
||||
@ -23,6 +23,8 @@ ADDITIONAL_COMPOSE_QUEUE_ARGS=$(additionalComposeQueueArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_ARGS=$(additionalComposeArgs) || exit $?
|
||||
|
||||
ADDITIONAL_CACHE_ARGS=$(additionalComposeCacheArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_MONITORING_ARGS=$(additionalComposeMonitoringArgs) || exit $?
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS $ADDITIONAL_COMPOSE_MONITORING_ARGS up -d
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS $ADDITIONAL_COMPOSE_MONITORING_ARGS up -d
|
||||
|
||||
@ -23,6 +23,8 @@ ADDITIONAL_COMPOSE_QUEUE_ARGS=$(additionalComposeQueueArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_ARGS=$(additionalComposeArgs) || exit $?
|
||||
|
||||
ADDITIONAL_CACHE_ARGS=$(additionalComposeCacheArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_MONITORING_ARGS=$(additionalComposeMonitoringArgs) || exit $?
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS $ADDITIONAL_COMPOSE_MONITORING_ARGS stop
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS $ADDITIONAL_COMPOSE_MONITORING_ARGS stop
|
||||
|
||||
@ -23,5 +23,7 @@ ADDITIONAL_COMPOSE_QUEUE_ARGS=$(additionalComposeQueueArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_ARGS=$(additionalComposeArgs) || exit $?
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS pull $@
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS up -d --no-deps --build $@
|
||||
ADDITIONAL_CACHE_ARGS=$(additionalComposeCacheArgs) || exit $?
|
||||
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS pull $@
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS up -d --no-deps --build $@
|
||||
|
||||
@ -44,10 +44,12 @@ ADDITIONAL_COMPOSE_QUEUE_ARGS=$(additionalComposeQueueArgs) || exit $?
|
||||
|
||||
ADDITIONAL_COMPOSE_ARGS=$(additionalComposeArgs) || exit $?
|
||||
|
||||
ADDITIONAL_CACHE_ARGS=$(additionalComposeCacheArgs) || exit $?
|
||||
|
||||
ADDITIONAL_STARTUP_SERVICES=$(additionalStartupServices) || exit $?
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS pull tb-core1
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS pull tb-core1
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS up -d redis $ADDITIONAL_STARTUP_SERVICES
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS up -d $ADDITIONAL_STARTUP_SERVICES
|
||||
|
||||
docker-compose -f docker-compose.yml docker-compose.redis.yml $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS run --no-deps --rm -e UPGRADE_TB=true -e FROM_VERSION=${fromVersion} tb-core1
|
||||
docker-compose -f docker-compose.yml $ADDITIONAL_CACHE_ARGS $ADDITIONAL_COMPOSE_ARGS $ADDITIONAL_COMPOSE_QUEUE_ARGS run --no-deps --rm -e UPGRADE_TB=true -e FROM_VERSION=${fromVersion} tb-core1
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user