created initial script for different service profiles
parent
ac27973330
commit
a5b26ebde1
|
@ -0,0 +1,75 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Pfad zur .env.all Datei
|
||||||
|
ENV_FILE="../env/.env.all"
|
||||||
|
|
||||||
|
# Funktion zum Überprüfen der Existenz einer Datei
|
||||||
|
check_file_exists() {
|
||||||
|
if [ ! -f "$1" ]; then
|
||||||
|
echo "Fehler: Die Datei $1 existiert nicht."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Überprüfe die Existenz von .env.all
|
||||||
|
check_file_exists "../env/.env.all"
|
||||||
|
|
||||||
|
# Funktion zum Auslesen von Variablen aus der .env.all Datei
|
||||||
|
get_env_var() {
|
||||||
|
grep "^$1=" "$ENV_FILE" | cut -d '=' -f2
|
||||||
|
}
|
||||||
|
|
||||||
|
# Auslesen der INFRASTRUCTURE und ENVIRONMENT Variablen
|
||||||
|
INFRASTRUCTURE=$(get_env_var "INFRASTRUCTURE_LABEL")
|
||||||
|
ENVIRONMENT=$(get_env_var "ENVIRONMENT")
|
||||||
|
|
||||||
|
# Load environment variables from the .env files
|
||||||
|
set -o allexport
|
||||||
|
source ../env/.env.all
|
||||||
|
source ../env/${ENVIRONMENT}/.env.administration
|
||||||
|
set +o allexport
|
||||||
|
|
||||||
|
# Liste Stacks
|
||||||
|
STACKS=("administration")
|
||||||
|
|
||||||
|
# Liste aller Environments
|
||||||
|
ENVIRONMENTS=("development" "staging" "production")
|
||||||
|
|
||||||
|
|
||||||
|
# Überprüfe die Existenz aller Stack-spezifischen .env Dateien
|
||||||
|
missing_files=0
|
||||||
|
for stack in "${STACKS[@]}"; do
|
||||||
|
env_file="../env/${ENVIRONMENT}/.env.${stack}"
|
||||||
|
if ! check_file_exists "$env_file"; then
|
||||||
|
missing_files=$((missing_files + 1))
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $missing_files -eq 0 ]; then
|
||||||
|
echo "Alle erforderlichen .env Dateien für das ${ENVIRONMENT}-Environment sind vorhanden."
|
||||||
|
else
|
||||||
|
echo "Warnung: $missing_files .env Datei(en) fehlen. Einige Stacks könnten nicht korrekt funktionieren."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Überprüfe die Existenz aller Stack-spezifischen .env Dateien für alle Environments
|
||||||
|
for env in "${ENVIRONMENTS[@]}"; do
|
||||||
|
if [ "$env" != "$ENVIRONMENT" ]; then
|
||||||
|
for stack in "${STACKS[@]}"; do
|
||||||
|
env_file="../env/${env}/.env.${stack}"
|
||||||
|
if ! check_file_exists "$env_file"; then
|
||||||
|
echo "Warnung: Die Datei $env_file fehlt für das Environment $env."
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
# Ausgabe der Variablen
|
||||||
|
echo " "
|
||||||
|
echo "Deploying to:"
|
||||||
|
echo "INFRASTRUCTURE: ${INFRASTRUCTURE:-Not set}"
|
||||||
|
echo "ENVIRONMENT: ${ENVIRONMENT:-Not set}"
|
||||||
|
echo "-----------------------------------"
|
||||||
|
|
||||||
|
# Ausführen des Docker Compose Befehls
|
||||||
|
docker compose -f ../apps/docker-compose.all.yml --env-file ../env/.env.all --env-file ../env/${ENVIRONMENT}/.env.proxy --profile administration up --remove-orphans
|
|
@ -0,0 +1,105 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Pfad zur .env.all Datei
|
||||||
|
ENV_FILE="../env/.env.all"
|
||||||
|
# Funktion zum Auslesen von Variablen aus der .env.all Datei
|
||||||
|
get_env_var() {
|
||||||
|
grep "^$1=" "$ENV_FILE" | cut -d '=' -f2
|
||||||
|
}
|
||||||
|
|
||||||
|
# Auslesen der INFRASTRUCTURE und ENVIRONMENT Variablen
|
||||||
|
INFRASTRUCTURE=$(get_env_var "INFRASTRUCTURE_LABEL")
|
||||||
|
ENVIRONMENT=$(get_env_var "ENVIRONMENT")
|
||||||
|
SERVER_IP=$(curl -s https://api.ipify.org)
|
||||||
|
|
||||||
|
# Liste aller Stacks
|
||||||
|
STACKS=("administration" "frontend" "develop" "database" "proxy" "tools" "website" "backend")
|
||||||
|
|
||||||
|
# Liste aller Environments
|
||||||
|
ENVIRONMENTS=("development" "staging" "production")
|
||||||
|
|
||||||
|
# Funktion zum Überprüfen der Existenz einer Datei
|
||||||
|
check_file_exists() {
|
||||||
|
if [ ! -f "$1" ]; then
|
||||||
|
echo "Fehler: Die Datei $1 existiert nicht."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Prüfe, ob das Skript nur in der Entwicklungsumgebung ausgeführt wird
|
||||||
|
if [ "$ENVIRONMENT" == "development" ]; then
|
||||||
|
# Sicherstellen, dass acme_letsencrypt.json existiert und korrekte Berechtigungen hat
|
||||||
|
ACME_FILE="../apps/proxy/traefik/acme_letsencrypt.json"
|
||||||
|
|
||||||
|
if [ ! -f "$ACME_FILE" ]; then
|
||||||
|
echo "🔹 Erstelle $ACME_FILE..."
|
||||||
|
touch "$ACME_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🔹 Setze Berechtigungen für $ACME_FILE auf 600..."
|
||||||
|
chmod 600 "$ACME_FILE"
|
||||||
|
|
||||||
|
echo "🔹 ENVIRONMENT ist 'development' – Hosts aus .env.proxy werden hinzugefügt und Container gestartet."
|
||||||
|
|
||||||
|
# Pfad zur Proxy-Env-Datei
|
||||||
|
ENV_PROXY_FILE="../env/development/.env.proxy"
|
||||||
|
|
||||||
|
# Hosts-Datei Pfad (Linux/macOS)
|
||||||
|
HOSTS_FILE="/etc/hosts"
|
||||||
|
|
||||||
|
# Prüfe, ob die Env-Datei existiert
|
||||||
|
if [ ! -f "$ENV_PROXY_FILE" ]; then
|
||||||
|
echo "❌ Fehler: Die Datei $ENV_PROXY_FILE existiert nicht!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Lese alle Zeilen, die auf *_DOMAIN= enden und extrahiere die Werte
|
||||||
|
DOMAINS=($(grep -E '^[A-Z_]+_DOMAIN=' "$ENV_PROXY_FILE" | cut -d '=' -f2))
|
||||||
|
|
||||||
|
# Füge jede Domain zur /etc/hosts Datei hinzu, falls sie fehlt
|
||||||
|
for DOMAIN in "${DOMAINS[@]}"; do
|
||||||
|
if ! grep -q "$DOMAIN" "$HOSTS_FILE"; then
|
||||||
|
echo "127.0.0.1 $DOMAIN" | sudo tee -a "$HOSTS_FILE" > /dev/null
|
||||||
|
echo "✅ $DOMAIN zu /etc/hosts hinzugefügt"
|
||||||
|
else
|
||||||
|
echo "✅ $DOMAIN ist bereits in /etc/hosts vorhanden"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "❌ ENVIRONMENT ist nicht 'development' – Routing über externen DNS erwartet"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Überprüfe die Existenz von .env.all
|
||||||
|
check_file_exists "../env/.env.all"
|
||||||
|
|
||||||
|
# Überprüfe die Existenz aller Stack-spezifischen .env Dateien
|
||||||
|
missing_files=0
|
||||||
|
for stack in "${STACKS[@]}"; do
|
||||||
|
env_file="../env/${ENVIRONMENT}/.env.${stack}"
|
||||||
|
if ! check_file_exists "$env_file"; then
|
||||||
|
missing_files=$((missing_files + 1))
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $missing_files -eq 0 ]; then
|
||||||
|
echo "Alle erforderlichen .env Dateien sind vorhanden."
|
||||||
|
else
|
||||||
|
echo "WARNUNG: $missing_files .env Datei(en) fehlen. Einige Stacks könnten nicht korrekt funktionieren."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Ausgabe der Variablen
|
||||||
|
echo "Deploying to:"
|
||||||
|
echo "INFRASTRUCTURE: ${INFRASTRUCTURE:-Not set}"
|
||||||
|
echo "ENVIRONMENT: ${ENVIRONMENT:-Not set}"
|
||||||
|
echo "-----------------------------------"
|
||||||
|
|
||||||
|
# Check for the --build argument
|
||||||
|
BUILD_OPTION=""
|
||||||
|
if [[ "$1" == "--build" ]]; then
|
||||||
|
BUILD_OPTION="--build"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Ausführen des Docker Compose Befehls
|
||||||
|
docker compose -f ../apps/docker-compose.all.yml -p ${INFRASTRUCTURE:-my} --env-file ../env/.env.all --env-file ../env/${ENVIRONMENT}/.env.proxy --profile backend up --remove-orphans $BUILD_OPTION
|
|
@ -1,22 +1,59 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
|
||||||
|
|
||||||
echo "Prüfe, ob Traefik läuft..."
|
# Pfad zur .env.all Datei
|
||||||
|
ENV_FILE="../env/.env.all"
|
||||||
|
# Funktion zum Auslesen von Variablen aus der .env.all Datei
|
||||||
|
get_env_var() {
|
||||||
|
grep "^$1=" "$ENV_FILE" | cut -d '=' -f2
|
||||||
|
}
|
||||||
|
|
||||||
if ! docker ps --format '{{.Names}}' | grep -q 'traefik'; then
|
# Auslesen der INFRASTRUCTURE und ENVIRONMENT Variablen
|
||||||
echo "Traefik läuft nicht."
|
INFRASTRUCTURE=$(get_env_var "INFRASTRUCTURE_LABEL")
|
||||||
read -p "Möchtest du die lokale Version zum Debuggen (docker-compose.overwrite.yml) starten? (y/n): " answer
|
ENVIRONMENT=$(get_env_var "ENVIRONMENT")
|
||||||
if [[ "$answer" =~ ^[Yy]$ ]]; then
|
SERVER_IP=$(curl -s https://api.ipify.org)
|
||||||
echo "Starte lokale Version..."
|
|
||||||
docker compose -f ../apps/docker-compose.overwrite.yml up -d
|
# Liste aller Stacks
|
||||||
else
|
STACKS=("administration" "frontend" "develop" "database" "proxy" "tools" "website" "backend")
|
||||||
echo "Deployment abgebrochen."
|
|
||||||
exit 1
|
# Liste aller Environments
|
||||||
|
ENVIRONMENTS=("development" "staging" "production")
|
||||||
|
|
||||||
|
# Funktion zum Überprüfen der Existenz einer Datei
|
||||||
|
check_file_exists() {
|
||||||
|
if [ ! -f "$1" ]; then
|
||||||
|
echo "Fehler: Die Datei $1 existiert nicht."
|
||||||
|
return 1
|
||||||
fi
|
fi
|
||||||
|
}
|
||||||
|
# Überprüfe die Existenz von .env.all
|
||||||
|
check_file_exists "../env/.env.all"
|
||||||
|
|
||||||
|
# Überprüfe die Existenz aller Stack-spezifischen .env Dateien
|
||||||
|
missing_files=0
|
||||||
|
for stack in "${STACKS[@]}"; do
|
||||||
|
env_file="../env/${ENVIRONMENT}/.env.${stack}"
|
||||||
|
if ! check_file_exists "$env_file"; then
|
||||||
|
missing_files=$((missing_files + 1))
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $missing_files -eq 0 ]; then
|
||||||
|
echo "Alle erforderlichen .env Dateien sind vorhanden."
|
||||||
else
|
else
|
||||||
echo "Traefik läuft."
|
echo "WARNUNG: $missing_files .env Datei(en) fehlen. Einige Stacks könnten nicht korrekt funktionieren."
|
||||||
echo "Starte Deployment mit docker-compose.prod.yml..."
|
|
||||||
docker compose -f ../apps/docker-compose.prod.yml up -d
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Deployment abgeschlossen."
|
# Ausgabe der Variablen
|
||||||
|
echo "Deploying to:"
|
||||||
|
echo "INFRASTRUCTURE: ${INFRASTRUCTURE:-Not set}"
|
||||||
|
echo "ENVIRONMENT: ${ENVIRONMENT:-Not set}"
|
||||||
|
echo "-----------------------------------"
|
||||||
|
|
||||||
|
# Check for the --build argument
|
||||||
|
BUILD_OPTION=""
|
||||||
|
if [[ "$1" == "--build" ]]; then
|
||||||
|
BUILD_OPTION="--build"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Ausführen des Docker Compose Befehls
|
||||||
|
docker compose -f ../apps/docker-compose.all.yml -p ${INFRASTRUCTURE:-my} --env-file ../env/.env.all --env-file ../env/${ENVIRONMENT}/.env.proxy --profile app up --remove-orphans $BUILD_OPTION
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "Prüfe, ob Traefik läuft..."
|
||||||
|
|
||||||
|
if ! docker ps --format '{{.Names}}' | grep -q 'traefik'; then
|
||||||
|
echo "Traefik läuft nicht."
|
||||||
|
read -p "Möchtest du die lokale Version zum Debuggen (docker-compose.overwrite.yml) starten? (y/n): " answer
|
||||||
|
if [[ "$answer" =~ ^[Yy]$ ]]; then
|
||||||
|
echo "Starte lokale Version..."
|
||||||
|
docker compose -f ../apps/docker-compose.overwrite.yml up -d
|
||||||
|
else
|
||||||
|
echo "Deployment abgebrochen."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Traefik läuft."
|
||||||
|
echo "Starte Deployment mit docker-compose.prod.yml..."
|
||||||
|
docker compose -f ../apps/docker-compose.prod.yml up -d
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Deployment abgeschlossen."
|
|
@ -0,0 +1,54 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Pfad zur .env.all Datei
|
||||||
|
ENV_FILE="../env/.env.all"
|
||||||
|
|
||||||
|
# Funktion zum Auslesen von Variablen aus der .env.all Datei
|
||||||
|
get_env_var() {
|
||||||
|
grep "^$1=" "$ENV_FILE" | cut -d '=' -f2
|
||||||
|
}
|
||||||
|
|
||||||
|
# Auslesen der INFRASTRUCTURE und ENVIRONMENT Variablen
|
||||||
|
INFRASTRUCTURE=$(get_env_var "INFRASTRUCTURE_LABEL")
|
||||||
|
ENVIRONMENT=$(get_env_var "ENVIRONMENT")
|
||||||
|
|
||||||
|
# Liste aller Stacks
|
||||||
|
STACKS=("proxy")
|
||||||
|
|
||||||
|
# Liste aller Environments
|
||||||
|
ENVIRONMENTS=("development" "staging" "production")
|
||||||
|
|
||||||
|
# Funktion zum Überprüfen der Existenz einer Datei
|
||||||
|
check_file_exists() {
|
||||||
|
if [ ! -f "$1" ]; then
|
||||||
|
echo "Fehler: Die Datei $1 existiert nicht."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Überprüfe die Existenz von .env.all
|
||||||
|
check_file_exists "../env/.env.all"
|
||||||
|
|
||||||
|
# Überprüfe die Existenz aller Stack-spezifischen .env Dateien
|
||||||
|
missing_files=0
|
||||||
|
for stack in "${STACKS[@]}"; do
|
||||||
|
env_file="../env/${ENVIRONMENT}/.env.${stack}"
|
||||||
|
if ! check_file_exists "$env_file"; then
|
||||||
|
missing_files=$((missing_files + 1))
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $missing_files -eq 0 ]; then
|
||||||
|
echo "Alle erforderlichen .env Dateien sind vorhanden."
|
||||||
|
else
|
||||||
|
echo "WARNUNG: $missing_files .env Datei(en) fehlen. Einige Stacks könnten nicht korrekt funktionieren."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Ausgabe der Variablen
|
||||||
|
echo "Deploying to:"
|
||||||
|
echo "INFRASTRUCTURE: ${INFRASTRUCTURE:-Not set}"
|
||||||
|
echo "ENVIRONMENT: ${ENVIRONMENT:-Not set}"
|
||||||
|
echo "-----------------------------------"
|
||||||
|
|
||||||
|
# Ausführen des Docker Compose Befehls
|
||||||
|
docker compose -f ../apps/docker-compose.all.yml --env-file ../env/.env.all --env-file ../env/${ENVIRONMENT}/.env.proxy --profile proxy up --remove-orphans
|
|
@ -1,22 +1,160 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
# Funktion zur Überprüfung der Produktivumgebung
|
||||||
|
is_production() {
|
||||||
|
local prod_ip="85.215.56.185" # IP-Adresse deines Produktivservers
|
||||||
|
local current_ip
|
||||||
|
|
||||||
|
# Überprüfe das Betriebssystem
|
||||||
|
case "$OSTYPE" in
|
||||||
|
msys*|cygwin*|mingw*)
|
||||||
|
# Windows
|
||||||
|
current_ip=$(ipconfig | grep -i "IPv4 Address" | head -n 1 | awk '{print $NF}')
|
||||||
|
;;
|
||||||
|
darwin*)
|
||||||
|
# macOS
|
||||||
|
current_ip=$(ipconfig getifaddr en0) # Für Wi-Fi
|
||||||
|
if [ -z "$current_ip" ]; then
|
||||||
|
current_ip=$(ipconfig getifaddr en1) # Für Ethernet
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
linux*|bsd*|solaris*)
|
||||||
|
# Linux und andere Unix-ähnliche Systeme
|
||||||
|
current_ip=$(hostname -I | awk '{print $1}')
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Unbekanntes Betriebssystem: $OSTYPE"
|
||||||
|
return 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo "Erkannte IP-Adresse: $current_ip"
|
||||||
|
|
||||||
|
if [ "$current_ip" == "$prod_ip" ]; then
|
||||||
|
echo "Produktivumgebung erkannt."
|
||||||
|
return 0 # True, wir sind in der Produktivumgebung
|
||||||
|
else
|
||||||
|
echo "Lokale Entwicklungsumgebung erkannt."
|
||||||
|
return 1 # False, wir sind in der lokalen Umgebung
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Funktion zum Setzen der Umgebungsvariablen
|
||||||
|
set_environment_variables() {
|
||||||
|
if is_production; then
|
||||||
|
export DOMAIN_SUFFIX=".mindboost.team"
|
||||||
|
export TRAEFIK_DASHBOARD_DOMAIN="traefik${DOMAIN_SUFFIX}"
|
||||||
|
export PORTAINER_DOMAIN="portainer${DOMAIN_SUFFIX}"
|
||||||
|
export FRONTEND_DOMAIN="app${DOMAIN_SUFFIX}"
|
||||||
|
export BACKEND_DOMAIN="b${DOMAIN_SUFFIX}"
|
||||||
|
else
|
||||||
|
export DOMAIN_SUFFIX=".local"
|
||||||
|
export TRAEFIK_DASHBOARD_DOMAIN="traefik${DOMAIN_SUFFIX}"
|
||||||
|
export PORTAINER_DOMAIN="portainer${DOMAIN_SUFFIX}"
|
||||||
|
export FRONTEND_DOMAIN="frontend${DOMAIN_SUFFIX}"
|
||||||
|
export BACKEND_DOMAIN="backend${DOMAIN_SUFFIX}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
echo "Prüfe, ob Traefik läuft..."
|
echo "Prüfe, ob Traefik läuft..."
|
||||||
|
|
||||||
|
set_environment_variables
|
||||||
|
|
||||||
|
if ! docker ps --format '{{.Names}}' | grep -q 'traefik'; then
|
||||||
|
echo "Traefik läuft nicht. Starte Traefik mit CrowdSec Bouncer..."
|
||||||
|
|
||||||
|
if is_production; then
|
||||||
|
echo "Wir befinden uns in der Produktivumgebung."
|
||||||
|
echo "Starte Traefik und CrowdSec Bouncer mit docker-compose.traefik.prod.yml..."
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
|
docker compose -f ../apps/proxy/docker-compose.traefik.prod.yml up -d
|
||||||
|
else
|
||||||
|
echo "Wir befinden uns in der lokalen Entwicklungsumgebung."
|
||||||
|
echo "Starte Traefik und CrowdSec Bouncer mit docker-compose.traefik.local.yml..."
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
|
docker compose -f ../apps/docker-compose.traefik.local.yml up -d
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Traefik läuft bereits. Aktualisiere die Konfiguration..."
|
||||||
|
|
||||||
|
if is_production; then
|
||||||
|
echo "Aktualisiere Traefik und CrowdSec Bouncer in der Produktivumgebung..."
|
||||||
|
docker compose -f ../apps/docker-compose.traefik.prod.yml up -d
|
||||||
|
else
|
||||||
|
echo "Aktualisiere Traefik und CrowdSec Bouncer in der lokalen Umgebung..."
|
||||||
|
docker compose -f ../apps/docker-compose.traefik.local.yml up -d
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Traefik und CrowdSec Bouncer Deployment abgeschlossen."
|
||||||
|
|
||||||
|
=================
|
||||||
|
|
||||||
|
|
||||||
|
echo "Prüfe, ob Traefik läuft..."
|
||||||
|
|
||||||
|
set_environment_variables
|
||||||
|
|
||||||
|
if ! docker ps --format '{{.Names}}' | grep -q 'traefik'; then
|
||||||
|
echo "Traefik läuft nicht. Starte Traefik und Portainer..."
|
||||||
|
else
|
||||||
|
echo "Traefik läuft bereits. Aktualisiere die Konfiguration..."
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if is_production; then
|
||||||
|
echo "Wir befinden uns in der Produktivumgebung."
|
||||||
|
echo "Starte/Aktualisiere Deployment mit docker-compose.prod.yml..."
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
|
docker compose -f ../apps/docker-compose.prod.yml up -d
|
||||||
|
else
|
||||||
|
echo "Wir befinden uns in der lokalen Entwicklungsumgebung."
|
||||||
|
echo "Starte/Aktualisiere lokale Version mit docker-compose.overwrite.yml..."
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
|
docker compose -f ../apps/docker-compose.overwrite.yml up -d
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
if ! docker ps --format '{{.Names}}' | grep -q 'traefik'; then
|
if ! docker ps --format '{{.Names}}' | grep -q 'traefik'; then
|
||||||
echo "Traefik läuft nicht."
|
echo "Traefik läuft nicht."
|
||||||
|
|
||||||
|
if is_production; then
|
||||||
|
echo "Wir befinden uns in der Produktivumgebung."
|
||||||
|
set_environment_variables
|
||||||
|
echo "Starte Deployment mit docker-compose.prod.yml..."
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
|
docker compose -f ../apps/docker-compose.prod.yml up -d
|
||||||
|
else
|
||||||
|
echo "Wir befinden uns in der lokalen Entwicklungsumgebung."
|
||||||
read -p "Möchtest du die lokale Version zum Debuggen (docker-compose.overwrite.yml) starten? (y/n): " answer
|
read -p "Möchtest du die lokale Version zum Debuggen (docker-compose.overwrite.yml) starten? (y/n): " answer
|
||||||
if [[ "$answer" =~ ^[Yy]$ ]]; then
|
if [[ "$answer" =~ ^[Yy]$ ]]; then
|
||||||
echo "Starte lokale Version..."
|
echo "Starte lokale Version..."
|
||||||
|
set_environment_variables
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
docker compose -f ../apps/docker-compose.overwrite.yml up -d
|
docker compose -f ../apps/docker-compose.overwrite.yml up -d
|
||||||
else
|
else
|
||||||
echo "Deployment abgebrochen."
|
echo "Deployment abgebrochen."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
echo "Traefik läuft."
|
echo "Traefik läuft bereits."
|
||||||
echo "Starte Deployment mit docker-compose.prod.yml..."
|
|
||||||
|
if is_production; then
|
||||||
|
echo "Wir befinden uns in der Produktivumgebung."
|
||||||
|
set_environment_variables
|
||||||
|
echo "Aktualisiere Deployment mit docker-compose.prod.yml..."
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
docker compose -f ../apps/docker-compose.prod.yml up -d
|
docker compose -f ../apps/docker-compose.prod.yml up -d
|
||||||
|
else
|
||||||
|
echo "Wir befinden uns in der lokalen Entwicklungsumgebung."
|
||||||
|
set_environment_variables
|
||||||
|
echo "Aktualisiere lokale Version mit docker-compose.overwrite.yml..."
|
||||||
|
env | grep DOMAIN # Debug: Zeige die gesetzten Umgebungsvariablen an
|
||||||
|
docker compose -f ../apps/docker-compose.overwrite.yml up -d
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Deployment abgeschlossen."
|
echo "Deployment abgeschlossen."
|
Loading…
Reference in New Issue