40 lines
1.1 KiB
Bash
40 lines
1.1 KiB
Bash
#!/bin/sh
|
|
|
|
FULLS_DIR="/app/public/images/fulls"
|
|
THUMBS_DIR="/app/public/images/thumbs"
|
|
|
|
generate_thumbs() {
|
|
mkdir -p "$THUMBS_DIR"
|
|
for img in "$FULLS_DIR"/*; do
|
|
[ -f "$img" ] || continue
|
|
|
|
filename=$(basename "$img")
|
|
ext=$(echo "${filename##*.}" | tr '[:upper:]' '[:lower:]')
|
|
|
|
# Nur Bilddateien verarbeiten
|
|
case "$ext" in
|
|
jpg|jpeg|png|gif|webp) ;;
|
|
*) continue ;;
|
|
esac
|
|
|
|
# Thumbnail nur erstellen wenn noch nicht vorhanden oder aelter als Original
|
|
if [ ! -f "$THUMBS_DIR/$filename" ] || [ "$img" -nt "$THUMBS_DIR/$filename" ]; then
|
|
echo "Thumbnail erstellen: $filename"
|
|
convert "$img" -resize 512x512 -quality 80 "$THUMBS_DIR/$filename" 2>/dev/null
|
|
fi
|
|
done
|
|
}
|
|
|
|
echo "=== Mischkomposition - Starte Thumbnail-Generierung ==="
|
|
generate_thumbs
|
|
echo "=== Thumbnail-Generierung abgeschlossen ==="
|
|
|
|
# Hintergrund-Prozess: Alle 60 Sekunden nach neuen Bildern suchen
|
|
(while true; do
|
|
sleep 60
|
|
generate_thumbs
|
|
done) &
|
|
|
|
# Node Server starten
|
|
cd /app && node backend/server.js
|