Files

60 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
GREEN='\033[0;32m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
STACK_DIR="/opt/docker-stacks/03-apps"
DB_PATH="${STACK_DIR}/data/filebrowser/filebrowser.db"
echo -e "${BLUE}==================================================${NC}"
echo -e "${BLUE} 🚀 OpenClaw App-Stack Deployment (03-apps) ${NC}"
echo -e "${BLUE}==================================================${NC}"
cd "$STACK_DIR" || { echo -e "${RED}Fehler: Verzeichnis $STACK_DIR nicht gefunden!${NC}"; exit 1; }
echo -e "${YELLOW}⏳ Stoppe laufende Container...${NC}"
docker compose down
if [ -d "$DB_PATH" ]; then
echo -e "${YELLOW}⚠️ Bereinige fehlerhaftes Verzeichnis...${NC}"
sudo rm -rf "$DB_PATH"
fi
echo -e "${YELLOW}📂 Bereite Verzeichnisstruktur vor...${NC}"
sudo mkdir -p "$(dirname "$DB_PATH")"
# Datenbank sauber mit dem offiziellen Tool initialisieren, falls sie neu ist
if [ ! -s "$DB_PATH" ]; then
echo -e "${YELLOW}📦 Initialisiere frische File-Browser Datenbank...${NC}"
# Temporären Container starten, der NUR die DB sauber aufsetzt
docker run --rm \
-v "$(dirname "$DB_PATH")":/database \
filebrowser/filebrowser:latest \
filebrowser -d /database/filebrowser.db config init
# Standard-Admin explizit hinzufügen, damit admin/admin garantiert klappt
docker run --rm \
-v "$(dirname "$DB_PATH")":/database \
filebrowser/filebrowser:latest \
filebrowser -d /database/filebrowser.db users add admin admin --perm.admin=true
sudo chmod 666 "$DB_PATH"
echo -e "${GREEN}✓ Datenbankstruktur erfolgreich mit Standard-User (admin/admin) aufgesetzt.${NC}"
fi
echo -e "${YELLOW}⚡ Starte Docker-Compose-Stack neu...${NC}"
docker compose up -d --force-recreate --remove-orphans
echo -e "${YELLOW}⏳ Warte auf Initialisierung...${NC}"
sleep 5
echo -e "\n${BLUE}==================================================${NC}"
echo -e "${BLUE} 📊 Aktueller Status der Services: ${NC}"
echo -e "${BLUE}==================================================${NC}"
docker compose ps
echo -e "\n${GREEN}🎉 Deployment abgeschlossen! Melde dich an auf https://files.brabros.de${NC}"