#!/bin/bash -e #!/bin/bash -e FIRST_START_DONE="${CONTAINER_STATE_DIR}/creator-first-start-done" # container first start if [ ! -e "$FIRST_START_DONE" ]; then ################### 以下代码保证创建容器后只执行一次 除非执行:docker-compose $params up --force-recreate --build -d redis-cluster-creator echo "create cluster start..." sleep 5 redis-cli -h 172.17.0.1 -p 6379 flushall redis-cli -h 172.17.0.1 -p 6380 flushall redis-cli -h 172.17.0.1 -p 6381 flushall redis-cli -h 172.17.0.1 -p 6382 flushall redis-cli -h 172.17.0.1 -p 6383 flushall redis-cli -h 172.17.0.1 -p 6384 flushall redis-cli -h 172.17.0.1 -p 6379 CLUSTER RESET redis-cli -h 172.17.0.1 -p 6380 CLUSTER RESET redis-cli -h 172.17.0.1 -p 6381 CLUSTER RESET redis-cli -h 172.17.0.1 -p 6382 CLUSTER RESET redis-cli -h 172.17.0.1 -p 6383 CLUSTER RESET redis-cli -h 172.17.0.1 -p 6384 CLUSTER RESET sleep 5 echo "yes" | redis-cli --cluster create 172.17.0.1:6379 172.17.0.1:6380 172.17.0.1:6381 172.17.0.1:6382 172.17.0.1:6383 172.17.0.1:6384 --cluster-replicas 1 echo "create cluster end !" redis-cli -c -h 172.17.0.1 -p 6379 cluster nodes ################### 以上代码保证创建容器后只执行一次 touch $FIRST_START_DONE fi echo "The secret is: $FIRST_START_SETUP_ONLY_SECRET" exit 0