Fotoverwaltung Immich: eine Open-Source-Erfolgsgeschichte

Aus LinuxUser 05/2025

Fotoverwaltung Immich: eine Open-Source-Erfolgsgeschichte

© scyther5 / 123RF.com

Cloud-Galerie

Von seinen Entwicklern als Alternative zu Google Fotos geplant, wuchs Immich noch vor der ersten stabilen Version zu einer vollwertigen Fotoverwaltung heran.

Um kaum ein Open-Source-Projekt entwickelte sich in den letzten drei Jahren ein ähnlicher Hype wie um Immich [1]. Wer das Vorzeigeprojekt noch nicht kennt: Die Geschichte beginnt wie die zahlreicher anderer Open-Source-Projekte. Die Suche von Entwickler Alex Tran nach einer gleichwertigen oder besseren Alternative zu Google Fotos brachte keine befriedigenden Ergebnisse. Also entschloss er sich, selbst eine Anwendung zu schreiben, die seine Privatsphäre achtet. Wir berichteten bereits im LinuxUser 08/2024 ausführlich über das Projekt [2], das komplett freie Software ist und der AGPL-Lizenz unterliegt. Fast 60 000 Sterne und rund 3000 Forks auf Github zeugen von der Beliebtheit Immichs.

Gestatten: Immich

Bei Immich handelt es sich um eine leistungsstarke, selbst gehostete Foto- und Videoverwaltungslösung, die als Alternative zu proprietären Diensten wie Google Fotos konzipiert wurde. Sie legt besonderen Wert auf Datenschutz und Benutzerkontrolle. Im Hintergrund verfügt Immich mit PostgreSQL über eine leistungsfähige Datenbank, die auch beim Hosten großer Sammlungen keine Probleme bekommt. Die Anwendung bietet eine grafische Weboberfläche (Abbildung 1) sowie Apps für Android und iOS.

Abbildung 1: Die Darstellung im Browser zeigt links eine Seitenleiste mit verschiedenen Kategorien und rechts eine Zeitleiste zum Scrollen durch den Bildbestand. Links unten wird der verwendete Speicherplatz dargestellt, darunter gegebenenfalls der Status als finanzieller Unterstützer.

Abbildung 1: Die Darstellung im Browser zeigt links eine Seitenleiste mit verschiedenen Kategorien und rechts eine Zeitleiste zum Scrollen durch den Bildbestand. Links unten wird der verwendete Speicherplatz dargestellt, darunter gegebenenfalls der Status als finanzieller Unterstützer.

Durch die in den letzten Jahren enorm gestiegene Qualität von Hard- und Software zum Fotografieren auf unseren Smartphones wuchs die Zahl der Bilder exponentiell an. Viele davon landen allerdings auf den Servern von Google und Konsorten anstatt bei uns zu Hause, wo sie eigentlich hingehören. Über den Verlust an Datenschutz und Privatsphäre dieser Konstellation sind wir uns wohl alle bewusst. Alex Tran nahm das zum Anlass, mit Immich eine Alternative zu schaffen, die uns die Kontrolle über unsere in Fotos und Videos gegossenen Erinnerungen zurückgibt.

Zunächst war nur vorgesehen, die auf Google Fotos vorhandene Sammlung in die eigene Immich-Installation zu übernehmen und künftig aufgenommene Bilder dorthin zu synchronisieren. Mittlerweile beherrscht die Software aber auch das Importieren bestehender Sammlungen aus anderen Quellen, etwa dem heimischen PC oder externen Festplatten. Automatische Backups, einfache Freigaben und logische Organisation erweitern die Funktionalität. Maschinelles Lernen verbessert die Gesichts- und Objekterkennung.

Client-Server-Ansatz

Immich verwendet eine traditionelle Client-Server-Architektur mit Docker-Containern und mehreren Hauptkomponenten, die wir im Kasten “Architektur von Immich” näher erläutern. Im Kasten “Funktionen von Immich” erklären wir stichpunktartig die Hauptfunktionen der Software.

Architektur von Immich

Der Web-Client basiert auf Typescript und SvelteKit und bietet eine responsive Benutzeroberfläche zum Verwalten und Anzeigen von Medien. Die mobilen Apps für Android und iOS wurden mit Dart und Flutter entwickelt. Sie unterstützen Funktionen wie automatisches Backup über Mobilgeräte, ausgewählte Album-Uploads und Offline-Zugriff. Das Kommandozeilen-Interface umfasst ein NPM-Paket, mit dem Sie mit Ihrer Immich-Instanz arbeiten können, etwa für Backups oder große Batch-Uploads.

Das Server-Backend unterteilt sich in mehrere Dienste, die als einzelne Docker-Container ausgeführt werden. Der Immich-Server beantwortet REST-API-Anfragen zwischen Client und Server. Die Immich-Microservices führen Hintergrundaufgaben aus, etwa das Generieren von Thumbnails, das Extrahieren von Metadaten und Kodieren von Videos. Das Modul Immich-machine-learning führt maschinelle Lernmodelle für Funktionen wie Gesichtserkennung und Objekterkennung aus. PostgreSQL dient als primäre Datenbank zum Speichern von persistenten Daten und Redis verwaltet Warteschlangen für Hintergrundverarbeitungsaufgaben.

Die Docker-Images immich microservices und immich-machine-learning verwenden dasselbe Docker-File wie der Immich-Server, allerdings mit anderen Einstiegspunkten, wodurch sie nicht als einzelne Container gelistet werden.

Funktionen von Immich

Immich implementiert eine traditionelle Client-Server-Architektur, die folgende wichtige Funktionen bereitstellt:

  • Das automatische Backup lädt Fotos und Videos von Mobilgeräten direkt nach der Aufnahme auf den Server hoch.
  • Der ausgewählte Album-Upload ermöglicht es, bestimmte Alben für das Backup auszuwählen und so die Medienverwaltung flexibel zu gestalten.
  • Die Gesichts- und Objekterkennung nutzt maschinelles Lernen zum Kategorisieren von Fotos und ermöglicht so eine effiziente Suche und Organisation.
  • Die Multi-User-Unterstützung erlaubt das Anlegen mehrerer Benutzerkonten mit personalisierten Mediatheken und gemeinsamen Alben.
  • Die Metadatenanzeige extrahiert EXIF-Informationen, zeigt diese einschließlich der Geodaten an, und visualisiert Aufnahmestandorte auf einer integrierten Karte.
  • Dank der Unterstützung verschiedener Medienformate ist Immich kompatibel mit einer Vielzahl von Bild- und Videoformaten, einschließlich RAW-Bildern und HEIC/HEIF-Dateien.

Als selbst gehostete Lösung stellt Immich sicher, dass Sie die volle Kontrolle über Ihre Medien behalten, ohne auf Drittanbieterdienste angewiesen zu sein.

Die Entwickler empfehlen Linux als Grundlage, aber auch auf MacOS und Windows lassen sich Docker-Container mit Immich aufsetzen. Als Installationsmethode raten die Macher zu Docker Compose; ein Install-Skript, das die Schritte automatisiert, befindet sich derzeit in der Entwicklung [3]. In Zukunft soll es zusätzlich eine kostenpflichtige Cloud-Anwendung für Nutzer geben, die den Aufwand der Installation und Administration auf eigener Hardware scheuen. Die Installation in eine Docker-Umgebung beschreibt ausführlich ein Artikel auf der Webseite von Linuxiac [4].

Typescript

Das vor ziemlich genau vor drei Jahren gestartete Projekt fand dank der verwendeten weitverbreiteten Skriptsprache Typescript schnell weitere Entwickler und eine engagierte Nutzerschaft, die in einem Discord-Kanal [5] Hilfestellung gibt und die künftige Entwicklung diskutiert. Diese organisieren die Macher auf Github [6], die Dokumentation ist umfassend und gut gepflegt [7]. Bevor Immich 2025 eine stabile Veröffentlichung erreicht, sollten Sie unbedingt ein Backup Ihrer Daten an anderer Stelle vorhalten, denn Updates erscheinen oft im Wochen- oder gar Tagesrhythmus und enthalten teilweise tiefgreifende Änderungen.

Das Jahr 2024 war ein turbulentes Jahr für die Entwickler und stellte das Projekt für die Zukunft auf eine tragfähige Basis. Die US-amerikanische Stiftung FUTO zur Förderung von quelloffener Software wurde auf Immich aufmerksam, nahm das Projekt unter seine Fittiche und stellte im Juli 2024 vier Entwickler des Kern-Teams von Immich als Vollzeitkräfte ein. Dabei behalten diese die volle Autonomie über die Ausrichtung und Leitung des Projekts. Darüber hinaus bietet FUTO technische, rechtliche und administrative Unterstützung.

Ebenfalls im Juli wurde ein neues, freiwilliges Unterstützungsmodell vorgestellt, das eine Individual-Lizenz für 25 US-Dollar und eine Server-Lizenz für 100 US-Dollar einführte. Die Nutzergemeinde honorierte das mit vielen Anmeldungen, kritisierte allerdings die Bezeichnung Lizenz. Wer eine solche erwarb, erhielt ein Emblem mit der Aufschrift Lizenziert, bei allen anderen erschien dort recht unglücklich formuliert der Hinweis Unlizenziert. Die Entwickler griffen die Kritik schnell auf. Wer jetzt eine Lizenz erwirbt, erhält das Emblem Unterstützer, wer nicht finanziell unterstützt, erhält kein Emblem.

Wöchentlich aktualisiert

Mit zumeist wöchentlichen Aktualisierungen wurde die Anwendung im vergangenen Jahr um viele nützliche Funktionen erweitert. So führte Version 1.95.0 eine erweiterte Suche ein, bei der Filter für Datum, Ort und weiteren Merkmalen die Ergebnisse eingrenzen (Abbildung 2). Eine weitere Verbesserung brachte das Upgrade auf Pgvector 0.20.0 [8] für die Ähnlichkeitssuche in der Datenbank. Dennoch bleibt bei den Punkten Suche sowie Gesichts- und Objekterkennung noch Luft nach oben. Das ist aber auch bei anderen Apps, die KI einsetzen, der Fall und kein exklusives Problem von Immich.

Abbildung 2: Die erweiterte Suche erlaubt über Filter das Eingrenzen der Ergebnisse. Kürzlich wurden auch Tags und Beschreibungen mit einbezogen.

Abbildung 2: Die erweiterte Suche erlaubt über Filter das Eingrenzen der Ergebnisse. Kürzlich wurden auch Tags und Beschreibungen mit einbezogen.

Mit Release 1.103.0 wurden die Optionen zum Teilen erweitert. Dazu zählt unter anderem die Einführung der Berechtigung zur Freigabe von Alben, die nur Lesezugriff gewähren (Abbildung 3). Neben dem Teilen von Inhalten mit registrierten Personen lassen sich Alben auch für andere Nutzer über einen Link zur Ansicht freigeben (Abbildung 4). Eine der am meisten nachgefragten Funktionen war, Datum, Uhrzeit und Standortinformationen in externen Bibliotheken direkt in der Oberfläche bearbeiten und Objekte löschen zu können. Zudem wurden mit Version 1.104 neue Nutzer per E-Mail über ihre Konten informiert und die Zuordnung von Fotos durch Metadaten auf einer Landkarte (Abbildung 5) verbessert.

Abbildung 3: Immich erlaubt das Teilen von Inhalten mit anderen Usern der Plattform, aber auch mit solchen ohne Immich-Registrierung.

Abbildung 3: Immich erlaubt das Teilen von Inhalten mit anderen Usern der Plattform, aber auch mit solchen ohne Immich-Registrierung.


Abbildung 4: Das Teilen per Link schließt auch bei Immich nicht registrierte Personen ein. Hier legen Sie in einer Maske explizit fest, was der Link erlaubt, ob er ein Passwort erfordert und wann er verfällt.

Abbildung 4: Das Teilen per Link schließt auch bei Immich nicht registrierte Personen ein. Hier legen Sie in einer Maske explizit fest, was der Link erlaubt, ob er ein Passwort erfordert und wann er verfällt.


Abbildung 5: Die Kartendarstellung erlaubt das Lokalisieren der gespeicherten Fotos und Videos auf einer Weltkarte. Der Zoom verfeinert die Darstellung der Karte bis auf Straßenebene.

Abbildung 5: Die Kartendarstellung erlaubt das Lokalisieren der gespeicherten Fotos und Videos auf einer Weltkarte. Der Zoom verfeinert die Darstellung der Karte bis auf Straßenebene.

Im Juni 2024 erfolgte mit Version 1.106.1 die Erkennung ähnlicher Bilder: Ein neues Tool hilft dabei, Ihre Bibliothek zu entrümpeln, indem es doppelte und ähnliche Bilder aufspürt und Ihnen erlaubt, sie zu bearbeiten. Im August erweiterte das Projekt die mobile Immich-App von Release 1.111 um einen einfachen Foto-Editor, mit dem Sie Bilder drehen und zuschneiden. Zudem wurde serverseitig die Genauigkeit des Geocodings aufgewertet.

Im September brachte die Fassung 1.113 das Durchsuchen von Fotos und Videos in einer Ordneransicht, ähnlich wie in einem herkömmlichen Datei-Explorer. Diese Funktion aktivieren Sie in den Anwendereinstellungen unter Funktionen | Ordner (Abbildung 6). Im November erhielten mit 1.122 die Mobile-Apps Unterstützung für High Dynamic Range (HDR) bei Videos.

Abbildung 6: Die Organisation der Sammlung in die Ordneransicht findet in Jahresordnern statt. Die Ansicht in der Seitenleiste kann ausgeschaltet werden.

Abbildung 6: Die Organisation der Sammlung in die Ordneransicht findet in Jahresordnern statt. Die Ansicht in der Seitenleiste kann ausgeschaltet werden.

Der Januar 2025 brachte mit Modell 1.124 unter anderem Updates der Dokumentation. Darüber hinaus wurde die Ordneransicht erweitert. Sie erlaubt jetzt die Auswahl und das Bearbeiten eines oder mehrerer Bilder aus einem Verzeichnis (Abbildung 7). Im Februar wurden mit Ausführung 1.126 die Möglichkeiten der Suche erneut ausgeweitet. Wenn Sie Ihre Fotos regelmäßig mit Tags oder Beschreibungen versehen, erlaubt es die Web-GUI jetzt, nach Tags und in der App zusätzlich nach Beschreibungen zu suchen.

Abbildung 7: Nach einem kürzlichen Update lassen sich in der Ordneransicht ein oder auch mehrere Bilder bearbeiten. Sie können Datum und Ort editieren sowie die Fotos herunterladen, archivieren und löschen.

Abbildung 7: Nach einem kürzlichen Update lassen sich in der Ordneransicht ein oder auch mehrere Bilder bearbeiten. Sie können Datum und Ort editieren sowie die Fotos herunterladen, archivieren und löschen.

Ausblick

Im Februar reisten zwei Mitglieder des Kernteams nach Brüssel zur Entwicklermesse FOSDEM, um das Projekt erstmals öffentlich vorzustellen. Ein Vortrag [9] zeigte einige der Highlights von Immich und ging auch auf die weitere Planung ein. In der Roadmap [10] stehen neben der Veröffentlichung der stabilen Version für die nächsten Monate auch ein einfacher Bildeditor sowie besonders geschützte Fotos. Die Gesichtserkennung soll editierbar, die automatisch eingeblendeten Erinnerungsfotos aus vergangenen Jahren flexibler gestaltet werden. Eine Workflows genannte Funktion soll anstehende Aufgaben automatisieren, die Backup-Funktion überarbeitet werden. Ein weiteres Ziel besteht in der Föderation über mehrere Instanzen hinweg.

Wenn es noch eines weiteren Beweises für die Beliebtheit von Immich bedarf, so sind es die in letzter Zeit aus dem Boden schießenden Erweiterungen aus dritter Hand, die das Benutzererlebnis weiter verbessern wollen. Rund zwanzig davon listet die Webseite als Community-Projekte [11]. Andere sind so neu, dass sie es noch nicht in die Liste geschafft haben. Dazu gehört die GUI für Immich-Go (Abbildung 8), ein Tool zum Import von Fotos via Google Takeout.

Abbildung 8: Tools für Immich aus dritter Hand wie hier eine GUI für das ebenfalls aus dritter Hand stammende Immich-Go schießen wie Pilze aus dem Boden. Das ist ein gutes Indiz für die Beliebtheit der Software.

Abbildung 8: Tools für Immich aus dritter Hand wie hier eine GUI für das ebenfalls aus dritter Hand stammende Immich-Go schießen wie Pilze aus dem Boden. Das ist ein gutes Indiz für die Beliebtheit der Software.

Fazit

Das seit drei Jahren in der Entwicklung befindliche Immich ist ein Paradebeispiel dafür, wie das Wachstum einer Open-Source-Software idealerweise verlaufen sollte. Von der Idee eines künftigen Vaters zum Schutz der Privatsphäre seiner Kindern über das Onboarding weiterer interessierter Menschen bis zur Finanzierung und Festanstellung des Kernteams durch FUTO und der Förderung einer sehr aktiven Community hätte es nicht besser laufen können. Hier wurde anscheinend alles richtig gemacht und das Ergebnis kann sich sehen lassen. Daumen hoch für Immich. (tle)

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 05/2025 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben