- Add .dockerignore to exclude large upload files from Docker builds - Add docker-cleanup.sh script to free up Docker disk space - Add DOCKER_BUILD_FIX.md documentation for troubleshooting build issues This prevents large MP3 files from being copied into the Docker image, saving significant disk space during builds.
72 lines
1.9 KiB
Bash
Executable File
72 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
# Docker Cleanup-Skript
|
|
# Räumt nicht verwendete Docker-Images, Container, Volumes und Build-Cache auf
|
|
|
|
set -e
|
|
|
|
echo "🧹 Docker Cleanup..."
|
|
echo ""
|
|
|
|
# Zeige aktuellen Speicherverbrauch
|
|
echo "📊 Aktueller Docker-Speicherverbrauch:"
|
|
docker system df
|
|
echo ""
|
|
|
|
# Frage nach Bestätigung (falls interaktiv)
|
|
if [ -t 0 ]; then
|
|
echo "⚠️ Dies wird folgende Ressourcen entfernen:"
|
|
echo " - Alle nicht verwendeten Images"
|
|
echo " - Alle gestoppten Container"
|
|
echo " - Alle nicht verwendeten Netzwerke"
|
|
echo " - Build-Cache"
|
|
echo ""
|
|
echo "Möchtest du fortfahren? (j/n)"
|
|
read -r response
|
|
if [ "$response" != "j" ] && [ "$response" != "J" ]; then
|
|
echo "❌ Abgebrochen."
|
|
exit 0
|
|
fi
|
|
fi
|
|
|
|
# 1. Entferne gestoppte Container
|
|
echo "🗑️ Entferne gestoppte Container..."
|
|
STOPPED_CONTAINERS=$(docker ps -a -q -f status=exited | wc -l)
|
|
if [ "$STOPPED_CONTAINERS" -gt 0 ]; then
|
|
docker container prune -f
|
|
echo "✅ Gestoppte Container entfernt"
|
|
else
|
|
echo " Keine gestoppten Container gefunden"
|
|
fi
|
|
echo ""
|
|
|
|
# 2. Entferne nicht verwendete Images
|
|
echo "🗑️ Entferne nicht verwendete Images..."
|
|
docker image prune -a -f
|
|
echo "✅ Nicht verwendete Images entfernt"
|
|
echo ""
|
|
|
|
# 3. Entferne nicht verwendete Netzwerke
|
|
echo "🗑️ Entferne nicht verwendete Netzwerke..."
|
|
docker network prune -f
|
|
echo "✅ Nicht verwendete Netzwerke entfernt"
|
|
echo ""
|
|
|
|
# 4. Entferne Build-Cache (optional, kann lange dauern)
|
|
echo "🗑️ Entferne Build-Cache..."
|
|
docker builder prune -f
|
|
echo "✅ Build-Cache entfernt"
|
|
echo ""
|
|
|
|
# Zeige neuen Speicherverbrauch
|
|
echo "📊 Neuer Docker-Speicherverbrauch:"
|
|
docker system df
|
|
echo ""
|
|
|
|
# Zeige verfügbaren Speicherplatz
|
|
echo "💾 Verfügbarer Speicherplatz:"
|
|
df -h / | tail -1 | awk '{print " Gesamt: " $2 ", Verfügbar: " $4 ", Belegt: " $5}'
|
|
echo ""
|
|
|
|
echo "✅ Cleanup abgeschlossen!"
|
|
|