Wenn Immich plötzlich zickt — Warum die offizielle Docker‑Vorgehensweise entscheidend ist und wie man alte Fotosammlungen sauber als External Library einbindet Einleitung

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 /data ist 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 .immich Datei 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 .immich Datei 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 /data liegen
  • 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.