fix script
This commit is contained in:
parent
2dcc89f81a
commit
27b9ff262a
1 changed files with 37 additions and 14 deletions
|
|
@ -1,48 +1,71 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Stop het script direct als er een error optreedt
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
REPO_DIR="$HOME/docker"
|
# --- KLEUREN DEFINITIES (Voor mooie output) ---
|
||||||
|
GREEN='\033[0;32m'
|
||||||
|
BLUE='\033[0;34m'
|
||||||
|
YELLOW='\033[1;33m'
|
||||||
|
RED='\033[0;31m'
|
||||||
|
NC='\033[0m' # No Color
|
||||||
|
|
||||||
|
# --- PADEN AUTOMATISCH BEPALEN ---
|
||||||
|
# Dit is de magie: We kijken waar DIT script staat, en gaan 1 map omhoog.
|
||||||
|
# Hierdoor werkt het script altijd, ongeacht hoe je hoofdmap heet.
|
||||||
|
SCRIPT_PATH=$(readlink -f "$0")
|
||||||
|
SCRIPT_DIR=$(dirname "$SCRIPT_PATH")
|
||||||
|
REPO_DIR=$(dirname "$SCRIPT_DIR")
|
||||||
STACKS_DIR="$REPO_DIR/1. Docker-Stacks"
|
STACKS_DIR="$REPO_DIR/1. Docker-Stacks"
|
||||||
|
|
||||||
echo "=========================================="
|
echo -e "${BLUE}==========================================${NC}"
|
||||||
echo "🚀 Start Docker Update Script - $(date)"
|
echo -e "${BLUE}🚀 Start Docker Update Script - $(date)${NC}"
|
||||||
echo "=========================================="
|
echo -e "${BLUE}==========================================${NC}"
|
||||||
|
|
||||||
echo "📥 Pullen van Git..."
|
# 1. GIT UPDATE
|
||||||
|
echo -e "${YELLOW}📥 Pullen van Git...${NC}"
|
||||||
|
echo -e " Locatie: $REPO_DIR"
|
||||||
cd "$REPO_DIR"
|
cd "$REPO_DIR"
|
||||||
git pull origin main
|
git pull origin main
|
||||||
|
|
||||||
echo "🔄 Containers bijwerken..."
|
# 2. CONTAINERS UPDATEN
|
||||||
|
echo -e "${YELLOW}🔄 Containers bijwerken...${NC}"
|
||||||
|
|
||||||
# Zoek alle mappen met docker-compose.yml
|
# Zoek alle mappen die een docker-compose.yml bevatten (max 2 diep in 1. Docker-Stacks)
|
||||||
find "$STACKS_DIR" -maxdepth 2 -name "docker-compose.yml" | while read composefile; do
|
find "$STACKS_DIR" -maxdepth 2 -name "docker-compose.yml" | while read composefile; do
|
||||||
dir=$(dirname "$composefile")
|
dir=$(dirname "$composefile")
|
||||||
service_name=$(basename "$dir")
|
service_name=$(basename "$dir")
|
||||||
|
|
||||||
echo " 👉 Bezig met service: $service_name"
|
echo -e " 👉 Bezig met service: ${GREEN}$service_name${NC}"
|
||||||
cd "$dir"
|
cd "$dir"
|
||||||
|
|
||||||
# --- SPECIAAL VOOR TRAEFIK ---
|
# --- SPECIAAL VOOR TRAEFIK ---
|
||||||
# Als we in de Traefik map zitten, check dan het acme.json bestand
|
# Traefik crasht als acme.json niet bestaat of verkeerde rechten heeft.
|
||||||
|
# Dit script repareert dat automatisch.
|
||||||
if [ "$service_name" == "traefik" ]; then
|
if [ "$service_name" == "traefik" ]; then
|
||||||
if [ ! -f "./data/acme.json" ]; then
|
if [ ! -f "./data/acme.json" ]; then
|
||||||
echo " 🔨 Traefik: acme.json aanmaken en rechten zetten..."
|
echo -e " 🔨 ${YELLOW}Traefik: acme.json aanmaken en rechten (600) zetten...${NC}"
|
||||||
|
mkdir -p ./data
|
||||||
touch ./data/acme.json
|
touch ./data/acme.json
|
||||||
chmod 600 ./data/acme.json
|
chmod 600 ./data/acme.json
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
|
|
||||||
# Check voor .env en start
|
# Check of er een .env bestand is (informatief)
|
||||||
if [ -f .env ]; then
|
if [ -f .env ]; then
|
||||||
docker compose up -d --remove-orphans
|
docker compose up -d --remove-orphans
|
||||||
else
|
else
|
||||||
|
echo -e " ⚠️ ${RED}Let op: Geen .env bestand gevonden (check je secrets)!${NC}"
|
||||||
|
# We proberen alsnog te starten, sommige containers hebben geen .env nodig
|
||||||
docker compose up -d --remove-orphans
|
docker compose up -d --remove-orphans
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "🧹 Oude images opruimen..."
|
# 3. OPRUIMEN
|
||||||
|
echo -e "${YELLOW}🧹 Oude images opruimen...${NC}"
|
||||||
docker image prune -f
|
docker image prune -f
|
||||||
|
|
||||||
echo "✅ Update compleet!"
|
echo -e "${BLUE}==========================================${NC}"
|
||||||
echo "=========================================="
|
echo -e "${GREEN}✅ Update compleet!${NC}"
|
||||||
|
echo -e "${BLUE}==========================================${NC}"
|
||||||
Loading…
Reference in a new issue