27 lines
802 B
Bash
27 lines
802 B
Bash
#!/usr/bin/env bash
|
|
# Verzeichnis dieses Skripts ermitteln
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
BASE_DIR="$(dirname "$SCRIPT_DIR")"
|
|
|
|
echo "Erstelle Docker Netzwerk..."
|
|
docker network create --subnet=10.233.1.0/24 galera_net 2>/dev/null || true
|
|
|
|
echo "Starte Node 1 (Bootstrap)..."
|
|
cd "$BASE_DIR/mariadb/n1"
|
|
GALERA_BOOTSTRAP="--wsrep-new-cluster" docker compose up -d --force-recreate
|
|
|
|
echo "Warte auf Node 1 Healthcheck..."
|
|
until [ "$(docker inspect -f '{{.State.Health.Status}}' mariadb_n1)" == "healthy" ]; do
|
|
sleep 2
|
|
done
|
|
|
|
echo "Starte Node 2..."
|
|
cd "$BASE_DIR/mariadb/n2"
|
|
docker compose up -d --force-recreate
|
|
|
|
echo "Starte Node 3..."
|
|
cd "$BASE_DIR/mariadb/n3"
|
|
docker compose up -d --force-recreate
|
|
|
|
echo "Cluster wird gestartet. Status prüfen mit: ./check_nodes.sh"
|