Stirling PDF mit Docker Compose: PDF-Werkzeugkasten lokal in Minuten starten
Wenn ein News-Thema nicht stark genug ist, sollte der Ersatz mindestens ein echtes Alltagsproblem loesen. Genau das trifft auf Stirling PDF zu: PDFs zusammenfuehren, Seiten trennen, komprimieren, konvertieren oder spaeter auch per OCR erweitern, ohne Dokumente an einen Fremddienst hochzuladen.
Der Stand fuer diesen Artikel ist sauber: Das offizielle Projekt nennt in seinem aktuellen README weiterhin den Container docker.stirlingpdf.com/stirlingtools/stirling-pdf, und auf GitHub ist v2.9.2 seit 4. April 2026 der neueste stabile Release. Fuer ein reproduzierbares Setup pinne ich deshalb nicht auf latest, sondern direkt auf v2.9.2.
Was du am Ende hast
- Stirling PDF lokal unter
http://127.0.0.1:8080 - Ein kleines Compose-Setup mit persistenten Konfigurations- und Log-Verzeichnissen
- Einen direkten Health-Check fuer den laufenden Container
- Ein sichtbares Ergebnis im Browser, sobald du die erste PDF oeffnest oder zwei Dateien zusammenfuehrst
Voraussetzungen
- Docker Engine und
docker composesind installiert - Port
8080ist lokal frei - Du startest in einem neuen Projektordner statt in einem bestehenden Compose-Verzeichnis
1. Projektordner anlegen
Erst ein sauberer Arbeitsordner, dann die App:
mkdir stirling-pdf-lab && cd stirling-pdf-lab
mkdir -p stirling/config stirling/logs
2. Compose-Datei anlegen
Die offizielle Repo-Doku zeigt fuer den schnellen Start den aktuellen Image-Pfad und in den Compose-Beispielen den Health-Endpunkt unter /api/v1/info/status. Fuer einen lokalen Einzelplatz-Start reicht ein einzelner Service komplett aus.
stirling-pdf-lab/compose.yaml:
services:
stirling-pdf:
image: docker.stirlingpdf.com/stirlingtools/stirling-pdf:v2.9.2
container_name: stirling-pdf
restart: unless-stopped
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./stirling/config:/configs
- ./stirling/logs:/logs
environment:
SECURITY_ENABLELOGIN: "false"
DISABLE_ADDITIONAL_FEATURES: "false"
SYSTEM_DEFAULTLOCALE: de-DE
UI_APPNAME: Stirling PDF
UI_APPNAMENAVBAR: Stirling PDF
SYSTEM_MAXFILESIZE: "100"
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:8080/api/v1/info/status | grep -q 'UP'"]
interval: 10s
timeout: 10s
retries: 12
Die Port-Bindung an
127.0.0.1haelt den Dienst lokal. Wenn du Stirling PDF spaeter im Heimnetz oder ueber eine Domain freigeben willst, gehoert davor ein Reverse Proxy mit HTTPS.
3. Container starten
Jetzt ziehst du das gepinnte Image und startest den Stack:
docker compose pull
docker compose up -d
Danach sollte die Weboberflaeche hier reagieren:
http://127.0.0.1:8080
4. Funktion sauber pruefen
Vor dem ersten Klick im Browser lohnt sich der kurze Technik-Check:
docker compose ps
docker compose logs --tail=100 stirling-pdf
curl http://127.0.0.1:8080/api/v1/info/status
Wenn alles sauber steht, ist der Container im Status running und der letzte curl liefert eine Antwort mit UP. Genau an diesem Punkt ist das Tutorial bereits erfolgreich: Die lokale Web-App ist erreichbar und antwortet ueber ihren Health-Endpunkt.
5. Erstes sichtbares Ergebnis erzeugen
Oeffne http://127.0.0.1:8080 im Browser. Fuer einen schnellen Test brauchst du keine komplexe Demo:
- Ziehe zwei kleine PDF-Dateien in das Tool zum Zusammenfuehren.
- Starte den Merge.
- Lade die neue Datei herunter.
Alternativ kannst du eine einzelne PDF oeffnen und eine Seite drehen oder entfernen. Der Punkt ist nicht Theorie, sondern sofort zu sehen, dass der lokale Dienst tatsaechlich arbeitet und neue Dateien erzeugt.
6. Warum Stirling PDF als Fallback stark genug ist
Viele Self-Hosting-Guides zeigen am Ende nur, dass irgendein Container gestartet wurde. Das reicht nicht. Stirling PDF ist als Tutorial deshalb brauchbar, weil das Ergebnis direkt sichtbar ist:
- Web-UI im Browser statt nur Hintergrunddienst
- echte Alltagsaufgaben wie Merge, Split, Komprimierung und Konvertierung
- lokale Verarbeitung sensibler Dokumente
- aktuelles, offiziell dokumentiertes Container-Setup
Gerade fuer Rechnungen, Vertriaege, Scans oder Bewerbungsunterlagen ist ein lokaler PDF-Werkzeugkasten oft nuetzlicher als noch ein weiterer generischer "Docker Basics"-Artikel.
7. Sinnvolle Befehle fuer den Alltag
Mit diesen Kommandos kommst du im Alltag aus:
docker compose logs -f stirling-pdf
docker compose pull
docker compose up -d
docker compose down
Deine persistenten Daten bleiben in ./stirling/config und ./stirling/logs erhalten.
8. Was du spaeter erweitern kannst
Wenn der lokale Start fuer dich passt, kommen spaeter typischerweise diese Ausbaustufen:
- Login aktivieren statt offenem lokalen Zugriff
- Reverse Proxy mit HTTPS davor setzen
- groessere Dateigrenzen fuer dein eigenes Einsatzprofil anpassen
- OCR und Office-nahe Workflows pruefen, wenn du haeufig Scans und Umwandlungen verarbeitest
Fuer den ersten Tag ist das aber bewusst nicht noetig. Erst ein kleiner, sauber laufender Stack. Dann Erweiterungen.
Fazit
Am 12. April 2026 ist das ein starker Fallback: kein duennes News-Recycling, sondern ein reales Docker-Compose-Projekt mit sofort sichtbarem Ergebnis. Stirling PDF startet schnell, loest ein konkretes Problem und bleibt durch das Pinning auf v2.9.2 reproduzierbar.