fix: update database permissions script to set ownership to root
- Modify the script to explicitly set the owner of the database directory to root, ensuring proper access for SQLite. - Include error handling to attempt ownership change with sudo if the initial command fails, improving robustness of the script.
This commit is contained in:
47
scripts/quick-fix-db.sh
Executable file
47
scripts/quick-fix-db.sh
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/bin/bash
|
||||
# Quick-Fix für Datenbank-Berechtigungen
|
||||
|
||||
set -e
|
||||
|
||||
echo "🔧 Quick-Fix für Datenbank-Berechtigungen..."
|
||||
echo ""
|
||||
|
||||
cd "$(dirname "$0")/.." || exit 1
|
||||
|
||||
# Setze Berechtigungen
|
||||
echo "1️⃣ Setze Berechtigungen..."
|
||||
chmod 775 ./data
|
||||
chmod 664 ./data/prod.db 2>/dev/null || echo " ⚠️ Datenbankdatei nicht gefunden"
|
||||
|
||||
# Setze Besitzer auf root (Container läuft als root)
|
||||
echo "2️⃣ Setze Besitzer auf root..."
|
||||
sudo chown -R root:root ./data
|
||||
|
||||
# Zeige aktuelle Berechtigungen
|
||||
echo ""
|
||||
echo "✅ Berechtigungen gesetzt!"
|
||||
echo ""
|
||||
echo "📋 Aktuelle Berechtigungen:"
|
||||
ls -ld ./data
|
||||
ls -lh ./data/prod.db 2>/dev/null || echo " (Datei nicht gefunden)"
|
||||
echo ""
|
||||
|
||||
# Teste im Container
|
||||
echo "3️⃣ Teste Zugriff im Container..."
|
||||
if docker ps | grep -q hoerdle; then
|
||||
echo " Container läuft, teste Zugriff..."
|
||||
docker exec hoerdle sh -c "test -r /app/data/prod.db && echo '✅ Lesbar' || echo '❌ Nicht lesbar'"
|
||||
docker exec hoerdle sh -c "test -w /app/data/prod.db && echo '✅ Schreibbar' || echo '❌ Nicht schreibbar'"
|
||||
docker exec hoerdle sh -c "test -w /app/data && echo '✅ Verzeichnis schreibbar' || echo '❌ Verzeichnis nicht schreibbar'"
|
||||
else
|
||||
echo " ⚠️ Container läuft nicht"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "🔄 Starte Container neu..."
|
||||
docker compose restart hoerdle 2>/dev/null || echo " ⚠️ Konnte Container nicht neustarten (vielleicht läuft docker compose nicht?)"
|
||||
|
||||
echo ""
|
||||
echo "✅ Fertig! Prüfe jetzt die Logs:"
|
||||
echo " docker logs hoerdle --tail=50"
|
||||
|
||||
Reference in New Issue
Block a user