Files
ground-control-install/secondary/join.sh
T

19 lines
1013 B
Bash

#!/bin/sh
# Zweiten Standort beitreten (sekundaerer DNS). Ein Aufruf, idempotent.
# GC_SECONDARY="gamerpub.de@187.77.64.208:53" GC_BIND_IP=<oeffentliche-IP> sh join.sh
# Das Projekt heisst gamerpub-de (GC_PROJECT aenderbar). Beruehrt keine anderen Container, Netze oder Systemeinstellungen.
set -eu
: "${GC_SECONDARY:?GC_SECONDARY=zone@primaer-ip:53 setzen}"
P="${GC_PROJECT:-gamerpub-de}"
D="${GC_DIR:-$HOME/$P}"
mkdir -p "$D" && cd "$D"
curl -fsSL https://git1.mrmoe.de/mscadm/ground-control-install/raw/branch/main/secondary/docker-compose.yml -o docker-compose.yml
printf 'GC_PROJECT=%s\nGC_SECONDARY=%s\nGC_BIND_IP=%s\n' "$P" "$GC_SECONDARY" "${GC_BIND_IP:-0.0.0.0}" > .env
IP="${GC_BIND_IP:-}"
if [ -n "$IP" ] && ss -lun 2>/dev/null | awk '{print $5}' | grep -Eq "^($IP|0\.0\.0\.0|\*):53$"; then echo "FEHLER: $IP:53 ist belegt (nicht von uns): "; ss -lunp | grep ':53 ' ; exit 1; fi
docker compose pull -q
docker compose up -d
sleep 3
docker compose ps
docker logs --tail 5 "${P}-dns" 2>&1 | cut -c1-160