Wenn Immich plötzlich zickt — Warum die offizielle Docker‑Vorgehensweise entscheidend ist und wie man alte Fotosammlungen sauber als External Library einbindet Einleitung
Immich hat sich in kurzer Zeit zu einer der beliebtesten Self‑Hosted‑Fotoplattformen entwickelt. Die Docker‑Installation ist offiziell empfohlen, gut dokumentiert und im Normalfall schnell erledigt. Doch spätestens dann, wenn man alte Fotos aus einer früheren Immich‑Version oder aus einem anderen System importieren möchte, tauchen plötzlich Probleme auf, die man nicht erwartet.
Dieser Artikel erklärt:
- warum die offizielle Docker‑Struktur so wichtig ist
- welche typischen Fehler beim Import alter Daten auftreten
- wie man External Libraries korrekt einbindet
- und wie man Fallstricke vermeidet, die Immich zum Schweigen bringen
1. Die offizielle Immich‑Docker‑Struktur — und warum sie nicht verhandelbar ist
Immich nutzt bei der Docker‑Installation eine klare Ordnerstruktur. Der wichtigste Mount ist:
UPLOAD_LOCATION:/data
Alles, was Immich intern braucht, landet unter /data:
/data/upload/data/library/data/encoded-video/data/thumbs/data/profile/data/backups
Diese Struktur ist fix.
Sie ist nicht dafür gedacht, dass man dort eigene Ordner hineinlegt.
Und genau hier beginnt das Problem.
2. Der Klassiker: Alte Fotos liegen im falschen Bereich
Viele Nutzer haben alte Immich‑Installationen, bei denen Fotos z. B. unter:
/srv/docker/immich/library/external
lagen.
Das wirkt logisch — ist aber aus Sicht der neuen Immich‑Version ein Problem.
Denn:
Alles unterhalb von/dataist für Immich intern.
External Libraries dürfen dort nicht liegen.
Wenn man also alte Fotos in einen Ordner kopiert, der später unter /data landet, passiert Folgendes:
- Immich erkennt den Ordner nicht als External Library
- oder akzeptiert ihn, zeigt aber 0 Fotos
- oder scannt ihn, aber die Bilder erscheinen nicht in der Timeline
- oder Immich wirkt „abgestürzt“, weil der Scanner intern blockiert
3. Die richtige Lösung: External Libraries müssen außerhalb von /data liegen
Immich erwartet externe Fotosammlungen an einem eigenen, unabhängigen Pfad, z. B.:
/srv/external-photos
/mnt/nas/fotos
/media/archive
In der docker-compose.yml wird dieser Ordner dann separat gemountet:
volumes:
- ${UPLOAD_LOCATION}:/data
- /srv/external-photos:/external-photos:ro
Wichtig:
- Der Mount ist read‑only
- Immich schreibt nur eine
.immichDatei hinein - Die Fotos bleiben unverändert
- Die Library ist update‑sicher
4. Typische Fehler beim Import alter Daten
Fehler 1: Die Fotos liegen eine Ebene zu tief
Viele kopieren ihre alten Daten so:
/external-photos/photos/<tausende Dateien>
Immich scannt aber nur den Root‑Pfad, nicht automatisch Unterordner, wenn sie nicht explizit Teil der Struktur sind.
Lösung:
mv /external-photos/photos/* /external-photos/
rmdir /external-photos/photos
Fehler 2: Die Library zeigt 0 Fotos, obwohl Dateien da sind
Das passiert, wenn:
- die Dateien im falschen Ordner liegen
- die Rechte nicht stimmen
- die
.immichDatei im falschen Ordner liegt - der Scanner noch nicht gestartet wurde
Fehler 3: Die Fotos erscheinen nicht in der Timeline
Das ist kein Fehler — das ist Immich‑Design.
External Libraries erscheinen nur unter:
Libraries → External Libraries → <Name>
Wenn man sie in der Timeline sehen möchte:
Settings → External Libraries → Include in Timeline
Fehler 4: Immich wirkt „abgestürzt“
Bei großen Libraries (10k–100k Fotos) startet Immich:
- Thumbnail‑Generierung
- EXIF‑Parsing
- Gesichtserkennung
- Objekt‑Erkennung
- CLIP‑Indexing
Das kann Minuten bis Stunden dauern.
Währenddessen wirkt das UI manchmal träge oder leer.
5. Die korrekte Vorgehensweise zum Einbinden einer External Library
1. Ordner außerhalb von /data anlegen
mkdir -p /srv/external-photos
chown -R 1337:1337 /srv/external-photos
2. In der docker-compose.yml mounten
- /srv/external-photos:/external-photos:ro
3. Immich neu starten
docker compose down
docker compose up -d
4. Im UI hinzufügen
Settings → External Libraries → Add Library
Pfad:
/external-photos
5. Scan starten
Immich erzeugt:
/srv/external-photos/.immich
6. Optional: In die Timeline integrieren
Include in Timeline aktivieren.
6. Fazit
Die offizielle Docker‑Struktur von Immich ist nicht nur eine Empfehlung — sie ist die Grundlage dafür, dass die Software stabil läuft.
Wer alte Daten importiert, muss besonders darauf achten, dass:
- externe Fotos nicht unter
/dataliegen - die Ordnerstruktur stimmt
- die Dateien im Root der External Library liegen
- der Scanner Zeit bekommt
- die Timeline‑Integration bewusst aktiviert wird
Wenn man diese Punkte beachtet, läuft Immich zuverlässig — auch mit sehr großen Fotosammlungen.