42 lines
987 B
Bash
Executable File
42 lines
987 B
Bash
Executable File
#!/usr/bin/env bash
|
||
set -euo pipefail
|
||
|
||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
cd "$SCRIPT_DIR"
|
||
|
||
COMPOSE_FILE="docker-compose.deploy.yml"
|
||
|
||
if ! command -v docker >/dev/null 2>&1; then
|
||
echo "❌ Fehler: docker ist nicht installiert oder nicht im PATH."
|
||
exit 1
|
||
fi
|
||
|
||
if ! docker compose version >/dev/null 2>&1; then
|
||
echo "❌ Fehler: docker compose ist nicht verfügbar."
|
||
exit 1
|
||
fi
|
||
|
||
if [ ! -f "$COMPOSE_FILE" ]; then
|
||
echo "❌ Fehler: $COMPOSE_FILE nicht gefunden."
|
||
exit 1
|
||
fi
|
||
|
||
if [ ! -f ".env" ]; then
|
||
if [ -f ".env.example" ]; then
|
||
cp .env.example .env
|
||
echo "ℹ️ .env wurde aus .env.example erstellt. Bitte Werte prüfen."
|
||
else
|
||
echo "❌ Fehler: .env fehlt und keine .env.example vorhanden."
|
||
exit 1
|
||
fi
|
||
fi
|
||
|
||
echo "⬇️ Lade Container-Image..."
|
||
docker compose -f "$COMPOSE_FILE" pull
|
||
|
||
echo "🚀 Starte Container..."
|
||
docker compose -f "$COMPOSE_FILE" up -d
|
||
|
||
echo "✅ Deployment abgeschlossen."
|
||
docker compose -f "$COMPOSE_FILE" ps
|