#!/usr/bin/env bash # Richtet einen Docker-Host für CS2 Mapveto ein. Läuft vom eigenen Rechner aus per SSH. # # Aufruf: bash deploy/docker-host-einrichten.sh [volume] # Beispiel: bash deploy/docker-host-einrichten.sh cs2@192.168.178.111 # # Voraussetzungen: SSH-Schlüssel hinterlegt (ohne Passwortabfrage), Docker auf dem Host installiert. set -euo pipefail TARGET="${1:?Aufruf: $0 [volume]}" VOLUME="${2:-cs2-mapveto-gamefiles}" IMAGE="joedwards32/cs2:latest" HOST_PART="${TARGET#*@}" echo "→ Verbindung zu $TARGET prüfen" ssh -o BatchMode=yes -o ConnectTimeout=10 "$TARGET" true echo "→ Docker prüfen" if ! ssh "$TARGET" "command -v docker >/dev/null 2>&1"; then echo "Docker fehlt auf $HOST_PART. Installation: https://docs.docker.com/engine/install/" >&2 exit 1 fi ssh "$TARGET" "docker info >/dev/null" echo "→ Freier Platz für Docker (CS2 braucht rund 90 GB)" ssh "$TARGET" "df -BG /var/lib/docker 2>/dev/null | tail -1 || df -BG / | tail -1" echo "→ Volume $VOLUME anlegen (falls nicht vorhanden)" ssh "$TARGET" "docker volume inspect $VOLUME >/dev/null 2>&1 || docker volume create $VOLUME >/dev/null" echo "→ Image $IMAGE laden" ssh "$TARGET" "docker pull $IMAGE" cat <