docker.dateiverwaltung/Source/Dockerfile
data c5ee82e1c2 V 2.0 - Feinsortierung Live-Streaming, Import/Export, PDF-Rotation
Neue Features:
- Feinsortierung mit Live-Streaming (SSE) - zeigt Fortschritt in Echtzeit
- Import/Export für Sortierregeln (JSON)
- Sortierregeln-Liste mit Sortieroptionen (Name A-Z/Z-A, Priorität)
- Checkbox "Auch Dateinamen prüfen" für Keyword-Matching
- Automatische PDF-Seitenrotation bei OCR (90°, 180°, 270°)
- Tab-Persistenz über Page-Reload (localStorage)
- Modals schließen nur noch über X-Button

Bugfixes:
- Keywords nutzen jetzt Wortgrenzen (\b) - "rechnung" matched nicht mehr "Berechnung"
- Keyword-Prüfung standardmäßig nur auf PDF-Text, nicht Dateinamen
- Natürliche Sortierung für Regelnamen (1, 2, 10 statt 1, 10, 2)

Technisch:
- Async SSE-Generator mit asyncio.sleep(0) für sofortiges Streaming
- ocrmypdf mit --rotate-pages Flag
- Timeout für OCR auf 3 Minuten erhöht

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 13:42:12 +01:00

42 lines
920 B
Docker
Executable file

# Dateiverwaltung Docker Image
FROM python:3.11-slim
# System-Abhängigkeiten für OCR, PDF und DB-Backup
RUN apt-get update && apt-get install -y --no-install-recommends \
tesseract-ocr \
tesseract-ocr-deu \
ocrmypdf \
unpaper \
poppler-utils \
ghostscript \
libmagic1 \
curl \
mariadb-client \
postgresql-client \
gzip \
&& rm -rf /var/lib/apt/lists/*
# Arbeitsverzeichnis
WORKDIR /app
# Python-Abhängigkeiten
COPY backend/requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Anwendung kopieren
COPY backend/ ./backend/
COPY frontend/ ./frontend/
COPY regeln/ ./regeln/
# Umgebungsvariablen
ENV PYTHONPATH=/app
# Port
EXPOSE 8000
# Health Check
HEALTHCHECK --interval=30s --timeout=10s --retries=3 \
CMD curl -f http://localhost:8000/health || exit 1
# Start
CMD ["uvicorn", "backend.app.main:app", "--host", "0.0.0.0", "--port", "8000"]