chore: simplify docker-only deployment workflow
This commit is contained in:
41
deploy.sh
Executable file
41
deploy.sh
Executable file
@@ -0,0 +1,41 @@
|
||||
#!/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
|
||||
Reference in New Issue
Block a user