Files
Photography/entrypoint.sh
Kroonk ab6b2bb8fe Nextcloud-Integration: Dynamische Galerie + Auto-Thumbnails
- Galerie laedt Bilder dynamisch per JavaScript statt Jekyll-Loop
- nginx autoindex liefert JSON-Bilderliste
- Nextcloud-Ordner (Websitebilder) wird als Volume gemountet
- ImageMagick generiert automatisch 512px Thumbnails
- Hintergrund-Check alle 60s fuer neue Bilder
- Neuer entrypoint.sh fuer Thumbnail-Generierung + nginx Start

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 14:03:43 +02:00

40 lines
1.1 KiB
Bash

#!/bin/sh
FULLS_DIR="/usr/share/nginx/html/images/fulls"
THUMBS_DIR="/usr/share/nginx/html/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) &
# nginx starten
nginx -g 'daemon off;'