Add .dockerignore and Docker cleanup script to fix build space issues
- 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.
This commit is contained in:
71
scripts/docker-cleanup.sh
Executable file
71
scripts/docker-cleanup.sh
Executable file
@@ -0,0 +1,71 @@
|
||||
#!/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!"
|
||||
|
||||
Reference in New Issue
Block a user