31 lines
746 B
Bash
31 lines
746 B
Bash
#!/bin/sh
|
|
|
|
LOCK_FILE="redis-cluster-init.lock"
|
|
|
|
# Start Redis server in the background
|
|
redis-server /usr/local/etc/redis/redis.conf &
|
|
|
|
# Wait for Redis server to start
|
|
sleep 5
|
|
|
|
# Initialize the cluster only if the lock file does not exist
|
|
if [ ! -f "$LOCK_FILE" ]; then
|
|
echo "Initializing Redis Cluster..."
|
|
|
|
# Run the Redis cluster initialization
|
|
yes yes | redis-cli --cluster create \
|
|
redis-node-1:6379 \
|
|
redis-node-2:6379 \
|
|
redis-node-3:6379 \
|
|
--cluster-replicas 0
|
|
|
|
# Create the lock file after initialization
|
|
touch "$LOCK_FILE"
|
|
echo "Cluster initialization complete. Lock file created."
|
|
else
|
|
echo "Cluster has already been initialized. Skipping initialization."
|
|
fi
|
|
|
|
# Keep the container running
|
|
tail -f /dev/null
|