Immich auf dem UGREEN NAS installieren: Anleitung mit Docker
Immich ist eine selbst gehostete Foto- und Videoverwaltung, die als kostenlose, quelloffene Alternative zu Google Fotos funktioniert. Du installierst Immich direkt auf deinem UGREEN NAS, sicherst deine Smartphone-Aufnahmen automatisch auf den eigenen Speicher und behältst die volle Kontrolle über deine Daten.

TL;DR
Stelle sicher, dass dein UGREEN-NAS Docker offiziell unterstützt. Auf Modellen ohne offizielle Docker-Unterstützung (etwa dem DH2300) ist Immich nicht als regulärer Docker-Workflow zu empfehlen.
- Erstelle im freigegebenen Ordner „Docker“ deines UGREEN NAS einen neuen Projektordner für Immich, zum Beispiel
docker/immich. - Lade die offiziellen Immich-Konfigurationsdateien herunter:
docker-compose.ymlundexample.env. Benenneexample.envanschließend in.envum. - Passe die
.env-Datei an. Setze mindestens den Speicherort für Uploads, den Speicherort der PostgreSQL-Datenbank, die Zeitzone und ein eigenes Datenbankpasswort:UPLOAD_LOCATION=/volume1/docker/immich/library DB_DATA_LOCATION=/volume1/docker/immich/postgres TZ=Europe/Berlin IMMICH_VERSION=v3 DB_PASSWORD=EinSicheresPasswort123 - Lade
docker-compose.ymlund.envin den Immich-Projektordner auf dem NAS hoch. Prüfe vor dem Start, ob die in der.enveingetragenen Pfade auf deinem UGREEN NAS tatsächlich existieren. - Öffne in UGOS Pro die Docker-App und erstelle ein neues Projekt. Importiere die vorbereitete
docker-compose.yml, prüfe die Umgebungsvariablen, Volume-Mappings und Ports, und stelle den Stack bereit. - Kontrolliere nach dem Start den Containerstatus und die Logs. Wenn alle Immich-Dienste laufen, öffne die Weboberfläche im Browser über:
http://NAS-IP:2283 - Erstelle den ersten Benutzer. Dieser Benutzer wird als Admin-Konto eingerichtet. Verbinde anschließend die mobile Immich-App und führe zuerst einen kleinen Test-Upload durch, bevor du deine gesamte Foto- und Videobibliothek importierst.
Docker-Unterstützung des UGREEN-Modells prüfen
Immich läuft als Docker-Container. Die DXP-Serie und das DH4300 Plus bringen Docker-Unterstützung in UGOS Pro mit. Das DH2300 unterstützt Docker offiziell nicht. Immich benötigt mindestens 6 GB RAM und zwei CPU-Kerne; empfohlen werden 8 GB RAM und vier Kerne. Wenn du noch ein geeignetes Gerät auswählst, kannst du die verfügbaren UGREEN NASync Modelle vergleichen und in den jeweiligen Produktspezifikationen die Docker-Unterstützung prüfen.

PostgreSQL-Datenbank auf lokalem Speicher planen
Immich speichert Metadaten, Benutzerdaten und Indexinformationen in einer PostgreSQL-Datenbank. Die Performance dieser Datenbank beeinflusst direkt, wie schnell die Weboberfläche reagiert, wie zügig Suchen laufen und wie stabil der Upload funktioniert.
Auf UGREEN-Modellen mit M.2-Slots (DXP-Serie) ist ein lokales NVMe- beziehungsweise SSD-Volume der ideale Speicherort. Liegt die Datenbank stattdessen auf einer internen HDD, entkommentiere im aktuellen offiziellen docker-compose.yml beim Dienst database die Zeile DB_STORAGE_TYPE: 'HDD'. Eine Netzwerkfreigabe darf für DB_DATA_LOCATION nicht verwendet werden.

Immich mit Docker Compose installieren
Docker Compose ist der von Immich empfohlene Installationsweg. Auf einem UGREEN NAS kannst du die Compose-Konfiguration über die Docker-App in UGOS Pro als Projekt bereitstellen.
Immich-Projektordner erstellen
Öffne in UGOS Pro die App Dateien und gehe in den freigegebenen Ordner „Docker“. Erstelle dort einen neuen Ordner für Immich, zum Beispiel:
/volume1/docker/immich
Erstelle im Immich-Ordner mindestens diese Unterordner:
/volume1/docker/immich/postgres
/volume1/docker/immich/library
/volume1/docker/immich/external
| Ordner | Beispielpfad | Zweck |
|---|---|---|
| postgres | /volume1/docker/immich/postgres |
PostgreSQL-Datenbankdateien |
| library | /volume1/docker/immich/library |
Upload-Verzeichnis für neue Fotos |
| external | /volume1/docker/immich/external |
Bestehende Fotosammlung als externe Bibliothek |
Offizielle Konfigurationsdateien herunterladen
Lade die beiden Dateien aus dem offiziellen Immich-Repository auf deinen lokalen Computer herunter:
Verwende immer die Dateien aus dem aktuellen Release. Ältere Versionen können inkompatible Konfigurationen enthalten. Benenne nach dem Download die Datei example.env in .env um.
.env vollständig anpassen
Öffne die .env-Datei mit einem Texteditor und trage die Pfade und Einstellungen für dein UGREEN NAS ein. Die folgenden Felder sind relevant:
UPLOAD_LOCATION=/volume1/docker/immich/library
DB_DATA_LOCATION=/volume1/docker/immich/postgres
TZ=Europe/Berlin
DB_PASSWORD=EinSicheresPasswort123
IMMICH_VERSION=v3
Ersetze die Beispielwerte durch deine tatsächlichen Pfade und ein eigenes, sicheres Datenbankpasswort. Zum Passwort: Verwende nur Buchstaben und Zahlen, keine Sonderzeichen, die in Docker-Umgebungsvariablen Probleme verursachen können.
IMMICH_VERSION=v3 lädt die jeweils aktuelle stabile Version innerhalb der Hauptversion 3. Wenn du eine bestimmte Version festlegen möchtest, trage stattdessen eine vollständige Versionsnummer wie v3.x.y ein. Nach Änderungen an der .env-Datei müssen die betroffenen Container neu erstellt beziehungsweise der Stack erneut bereitgestellt werden; ein einfacher Neustart übernimmt geänderte Umgebungsvariablen nicht zuverlässig.
docker-compose.yml und .env auf das NAS hochladen
Öffne die App Dateien in UGOS Pro und navigiere zum Ordner /volume1/docker/immich/. Lade beide Dateien (docker-compose.yml und .env) in dieses Verzeichnis hoch.
Prüfe nach dem Upload, dass die .env-Datei tatsächlich als .env angezeigt wird und nicht als example.env oder .env.txt. Manche Betriebssysteme hängen beim Upload unsichtbare Dateiendungen an.
Projekt in der UGOS-Pro-Docker-App bereitstellen
- Öffne die Docker-App in UGOS Pro.
- Gehe im linken Navigationsbereich zu Projekt und klicke auf Erstellen.
- Wähle im Assistenten Vom lokalen Computer importieren und lade die vorbereitete Datei
docker-compose.ymlvon deinem Computer hoch. - Das System erkennt automatisch die Dienstkonfigurationen in der Datei. Prüfe vor dem Bereitstellen, ob
UPLOAD_LOCATION,DB_DATA_LOCATION,DB_PASSWORDundIMMICH_VERSIONaus der.env-Datei korrekt übernommen wurden. Wenn UGOS Pro die Werte in deiner Version nicht automatisch auflöst, trage sie im Projekteditor ein und starte die Bereitstellung erst, wenn keine${...}-Platzhalter mehr offen sind. Klicke anschließend auf Bereitstellen.
UGOS Pro lädt die benötigten Container-Images herunter und startet alle Immich-Dienste. Dieser Vorgang kann beim ersten Mal einige Minuten dauern, abhängig von der Internetverbindung und der NAS-Leistung.
Containerstatus und Logs prüfen
Nach der Bereitstellung solltest du prüfen, ob alle Container laufen. Gehe in der Docker-App zum Reiter Container und kontrolliere den Status. Immich besteht aus mehreren Containern, typischerweise:
-
immich_server(Hauptanwendung und API) -
immich_machine_learning(Gesichtserkennung und Suche) -
immich_postgres(Datenbank) -
immich_redis(Valkey-kompatibler Cache)
Immich über Portainer installieren
Portainer ist eine grafische Verwaltungsoberfläche für Docker. Falls du Portainer auf deinem UGREEN NAS bereits nutzt, kannst du Immich auch darüber bereitstellen, statt die UGOS-Pro-Docker-App zu verwenden. Die Grundkonfiguration bleibt gleich; beim Web-Editor verwendet die offizielle Immich-Anleitung für Portainer jedoch stack.env anstelle von .env.
Die Voraussetzungen, die Ordnerstruktur und die Anpassung der .env-Datei gelten unverändert. Falls du diese Schritte noch nicht durchgeführt hast, führe sie bitte zunächst wie oben beschrieben durch.
Portainer-Stack anlegen
- Öffne Portainer im Browser und wähle dein lokales Docker-Environment aus.
- Gehe im linken Menü zu Stacks und klicke auf Add stack.
- Vergib einen Namen für den Stack, etwa
immich.
Compose-Datei importieren
Der von Immich dokumentierte Weg verwendet den Web Editor. Öffne die docker-compose.yml auf deinem Computer, kopiere den gesamten Inhalt und füge ihn in das Editor-Feld ein. Ersetze anschließend bei immich-server und immich-machine-learning den Eintrag - .env durch - stack.env, damit Portainer die im Stack hinterlegten Variablen verwendet.
.env, Volume-Mappings und Ports prüfen
Scrolle in der Stack-Konfiguration nach unten zum Bereich Environment variables, aktiviere Advanced Mode und füge dort den Inhalt der aktuellen example.env ein. Prüfe anschließend, ob die Compose-Datei an den beiden env_file-Stellen auf stack.env verweist.
Prüfe vor dem Bereitstellen drei Punkte:
-
Pfade:
UPLOAD_LOCATIONundDB_DATA_LOCATIONmüssen auf die tatsächlichen Ordner auf deinem NAS zeigen, nicht auf Beispielpfade. -
Datenbankpasswort:
DB_PASSWORDsollte ein eigenes, sicheres Passwort sein, nicht der Standardwert. - Port 2283: Stelle sicher, dass kein anderer Dienst auf deinem NAS diesen Port bereits belegt.
Stack bereitstellen und Logs kontrollieren
Klicke auf Deploy the stack. Portainer lädt die Container-Images herunter und startet alle Immich-Dienste. Der erste Start kann einige Minuten dauern.
Nach der Bereitstellung siehst du die laufenden Container direkt im Stack-Überblick. Alle Container (immich_server, immich_machine_learning, immich_postgres, immich_redis) sollten den Status „Running“ zeigen. Falls ein Container nicht startet oder ständig neu startet, öffne seine Logs über das Log-Symbol in Portainer.
Immich zum ersten Mal einrichten
Die Ersteinrichtung im Browser ist bei beiden Installationswegen identisch. Sobald alle Container laufen, kannst du die Weboberfläche aufrufen und Immich konfigurieren.
Weboberfläche über Port 2283 öffnen
Öffne einen Browser auf deinem Computer und gib folgende Adresse ein:
http://NAS-IP:2283
Ersetze NAS-IP durch die IP-Adresse deines UGREEN NAS. Die IP findest du in UGOS Pro unter Systemsteuerung → Netzwerk → Netzwerkverbindung.
Admin-Konto erstellen
Beim ersten Aufruf zeigt Immich die Registrierungsseite. Der erste Benutzer, den du hier anlegst, wird automatisch zum Administrator. Gib deine E-Mail-Adresse, ein sicheres Passwort und deinen Namen ein und folge den Schritten zur Registrierung des ersten Kontos.
Merke dir diese Zugangsdaten. Das Admin-Konto verwaltet Benutzer, Bibliotheken, Servereinstellungen und externe Bibliotheken. Falls du das Administratorpasswort verlierst, kannst du es im Container immich_server mit dem Serverbefehl immich-admin reset-admin-password zurücksetzen; die Datenbank muss dafür nicht gelöscht werden.
Grundeinstellungen und Storage Template prüfen
Nach der ersten Anmeldung führt dich Immich durch einige Grundeinstellungen:
- Design: Wähle zwischen hellem und dunklem Modus.
- Datenschutz: Aktiviere oder deaktiviere die Übermittlung anonymer Nutzungsstatistiken an das Immich-Projekt.
- Storage Template: Standardmäßig deaktiviert. Diese Funktion legt fest, wie hochgeladene Dateien auf dem NAS organisiert werden, etwa nach Datum, Album oder Dateiname. Wenn du eine bestimmte Ordnerstruktur für deine Uploads bevorzugst, aktiviere das Template und passe das Schema an. Falls du dir unsicher bist, lasse die Voreinstellung und passe sie später an.
Klicke auf Fertig, um die Einrichtung abzuschließen.
Mobile App verbinden und Test-Upload durchführen
Immich bietet Apps für iOS und Android, mit denen du Smartphone-Fotos automatisch auf dein NAS sichern kannst. Installiere die Immich-App aus dem App Store oder Google Play Store und verbinde sie mit deinem Server:
- Öffne die App und gib die Server-Adresse ein:
http://NAS-IP:2283 - Melde dich mit dem soeben erstellten Admin-Konto an.
- Erteile der App Zugriff auf deine Fotos, wenn du dazu aufgefordert wirst.
- Aktiviere in den App-Einstellungen das automatische Backup, falls gewünscht.
Starte mit einem kleinen Test-Upload von wenigen Fotos. Prüfe danach in der Weboberfläche, ob die Bilder angezeigt werden und ob Thumbnails korrekt generiert wurden. Wenn das funktioniert, ist die Grundinstallation abgeschlossen.
Hinweis zum Remote-Zugriff: Die Server-Adresse http://NAS-IP:2283 funktioniert nur innerhalb deines lokalen Netzwerks. Für den Zugriff von unterwegs solltest du ein VPN wie Tailscale oder WireGuard beziehungsweise eine eigene Domain mit HTTPS-Reverse-Proxy verwenden. UGREENlink ermöglicht den Fernzugriff auf UGOS Pro, stellt aber nicht automatisch eine öffentliche HTTPS-Adresse für den Immich-Container bereit. Einen Überblick über UGREENlink, DDNS, Tailscale und grundlegende Sicherheitshinweise findest du in der UGREEN-Anleitung zum NAS-Fernzugriff.
Erste Fotobibliothek einrichten
Immich kennt zwei Arten von Bibliotheken: die Upload-Bibliothek für neue Fotos (etwa von Smartphones) und externe Bibliotheken für bereits vorhandene Fotosammlungen auf dem NAS. Beide können parallel existieren.
Upload-Bibliothek für Smartphone-Backups verwenden
Fotos, die über die Mobile App oder die Weboberfläche hochgeladen werden, landen automatisch in der Upload-Bibliothek. Immich speichert sie im Verzeichnis, das du in der .env-Datei als UPLOAD_LOCATION festgelegt hast (z. B. /volume1/docker/immich/library).
Immich verwaltet diese Dateien eigenständig. Wenn du das Storage Template aktiviert hast, organisiert Immich die Uploads nach dem konfigurierten Schema (etwa nach Datum oder Album). Ohne Storage Template bleiben die Dateien in der internen Standardstruktur.
Bestehende Fotos als externe Bibliothek einbinden
Falls du bereits eine Fotosammlung auf deinem NAS hast, kannst du sie als externe Bibliothek in Immich einbinden. Immich indexiert die Dateien und zeigt sie in der Oberfläche an, verschiebt oder verändert sie aber nicht. Die Originaldateien bleiben an ihrem bisherigen Speicherort.
Damit Immich auf die Fotos zugreifen kann, muss der entsprechende NAS-Ordner als Volume in der docker-compose.yml gemountet sein. Öffne die Datei und füge unter dem Dienst immich-server ein zusätzliches Volume hinzu:
volumes:
- /volume1/photos/archive:/mnt/external-library:ro
In diesem Beispiel wird der NAS-Ordner /volume1/photos/archive als /mnt/external-library im Container bereitgestellt. Das :ro am Ende steht für „read-only“ und verhindert, dass Immich Dateien in diesem Verzeichnis verändert oder löscht.
Nach dem Hinzufügen des Volumes musst du den Stack neu bereitstellen, damit die Änderung wirksam wird. Danach legst du in Immich die externe Bibliothek an:
- Öffne die Weboberfläche und gehe über den Avatar oben rechts zu Verwaltung → Externe Bibliotheken.
- Klicke auf Bibliothek erstellen, wähle den Bibliotheksbesitzer und klicke auf Erstellen.
- Öffne die Optionen der neuen Bibliothek und klicke auf Ordner hinzufügen.
- Trage den Container-Pfad ein:
/mnt/external-library - Klicke auf Hinzufügen.
Immich beginnt mit dem Scannen der Bibliothek. Je nach Umfang der Sammlung kann die erste Indexierung einige Zeit dauern.
Warum Container-Pfad und NAS-Pfad nicht dasselbe sind
Der häufigste Fehler bei externen Bibliotheken: In Immich wird der NAS-Pfad eingetragen statt des Container-Pfads. Immich läuft innerhalb eines Docker-Containers und sieht nur die Verzeichnisse, die über Volume-Mappings in der docker-compose.yml eingebunden sind.
Konkret: Wenn dein NAS-Ordner /volume1/photos/archive als /mnt/external-library in den Container gemountet ist, kennt Immich nur den Pfad /mnt/external-library. Der Pfad /volume1/photos/archive existiert innerhalb des Containers nicht und führt zu einer Fehlermeldung.
| Wo | Pfad | Beispiel |
|---|---|---|
| NAS (Host) | Tatsächlicher Speicherort auf dem NAS | /volume1/photos/archive |
| docker-compose.yml | Volume-Mapping (Host:Container) | /volume1/photos/archive:/mnt/external-library:ro |
| Immich-Weboberfläche | Container-Pfad eintragen | /mnt/external-library |
Wenn die externe Bibliothek nach dem Einrichten leer bleibt oder eine Fehlermeldung erscheint, prüfe zuerst, ob du den Container-Pfad und nicht den NAS-Pfad eingetragen hast.
Vor dem großen Import: Backup und Updates prüfen
Immich kann Fotos vom Smartphone auf dein UGREEN NAS übertragen und Medien zentral verwalten. Das ist aber nicht dasselbe wie ein vollständiges Backup des NAS.
Immich ersetzt kein vollständiges Backup
Immich speichert nicht nur Bild- und Videodateien. Die Anwendung verwaltet auch Metadaten, Benutzer, Alben, Vorschaubilder, Jobs und Verweise in einer PostgreSQL-Datenbank. Deshalb reicht es nicht, nur den Upload-Ordner zu kopieren. Für eine brauchbare Wiederherstellung brauchst du sowohl die Mediendateien als auch die zugehörigen Datenbank- und Konfigurationsdaten.
RAID oder ein gespiegeltes Volume schützt in erster Linie vor dem Ausfall einzelner Laufwerke. Welche Unterschiede zwischen den verschiedenen RAID-Leveln bestehen und für welche Einsatzbereiche sie geeignet sind, erklärt der UGREEN-Leitfaden zu RAID 0, RAID 1 und RAID 5. RAID schützt jedoch nicht zuverlässig vor versehentlichem Löschen, fehlerhaften Updates, einer beschädigten Datenbank, Malware oder einem Defekt des gesamten NAS. Auch die Synchronisierung ist kein vollständiges Backup, wenn Löschungen oder Fehler automatisch auf das Ziel übernommen werden. Plane deshalb mindestens eine zusätzliche Sicherung ein, idealerweise auf einem anderen Gerät oder an einem anderen Standort. Wie du mehrere Sicherungskopien und einen externen Speicherort systematisch einplanst, zeigt der UGREEN-Leitfaden zur 3-2-1-Backup-Regel.

Upload-Verzeichnis, Datenbank, .env und Compose-Datei sichern
Für eine Immich-Installation mit Docker Compose solltest du mindestens diese Bestandteile sichern:
/volume1/docker/immich/library
/volume1/docker/immich/docker-compose.yml
/volume1/docker/immich/.env
Wenn du externe Bibliotheken einbindest, musst du auch deren Speicherort berücksichtigen. Liegen bestehende Fotos außerhalb des Immich-Projektordners, sind sie nicht automatisch durch ein Backup des Immich-Ordners abgedeckt.
Updates nur nach Prüfung der Release Notes einspielen
Aktualisiere Immich nicht blind, wenn du bereits eine produktive Fotobibliothek nutzt. Container-Updates können Änderungen an Datenbank, Diensten oder Konfigurationsoptionen enthalten. Prüfe deshalb vor einem Update die Release Notes und achte besonders auf Breaking Changes, Migrationshinweise und Änderungen an der docker-compose.yml oder .env.
Vor jedem Update solltest du mindestens die Datenbank, das Upload-Verzeichnis und die Konfigurationsdateien sichern. Wenn du Immich über Docker Compose verwaltest, läuft ein Update in der Regel über das Abrufen neuer Images und das erneute Starten des Stacks:
docker compose pull && docker compose up -d

FAQ zu Immich auf UGREEN NAS
Kann ich Immich auf jedem UGREEN NAS installieren?
Nein. Immich setzt eine Container-Umgebung voraus, daher sollte dein UGREEN NAS Docker beziehungsweise Docker Compose offiziell unterstützen.
Das DH2300 unterstützt Docker offiziell nicht. Eine manuelle Docker-Installation wird auf dem DH2300 nicht offiziell unterstützt und ist daher für diese Anleitung sowie für einen verlässlich wartbaren Immich-Betrieb nicht zu empfehlen. Für Immich sind Modelle mit offizieller Docker-Unterstützung, ausreichend RAM und idealerweise SSD-Option deutlich besser geeignet, etwa die DXP-Serie oder das DH4300 Plus.
Brauche ich Portainer für Immich auf dem UGREEN NAS?
Nein. Portainer ist optional. Immich wird offiziell über Docker Compose bereitgestellt. Auf einem UGREEN NAS kannst du die Compose-Konfiguration entweder über die Docker-App in UGOS Pro als Projekt bereitstellen oder dieselbe Compose-Datei in Portainer als Stack importieren.
Wo sollte die Immich-Datenbank gespeichert werden?
Die PostgreSQL-Datenbank sollte auf lokalem Speicher des NAS liegen, idealerweise auf einer SSD oder einem schnellen internen Volume. Der Speicherort wird in der .env-Datei über DB_DATA_LOCATION festgelegt.
Lege die Datenbank nicht auf eine Netzwerkfreigabe. Eine langsame oder instabile Verbindung zur Datenbank kann die Immich-Installation ausbremsen oder Fehler verursachen.
Welcher Port wird für Immich verwendet?
Die Immich-Weboberfläche ist standardmäßig über Port 2283 erreichbar. Nach der Installation öffnest du Immich im Browser mit dieser Adresse:
http://NAS-IP:2283
Ersetze NAS-IP durch die IP-Adresse deines UGREEN NAS. Wenn die Seite nicht lädt, prüfe zuerst, ob die Container laufen, ob Port 2283 korrekt gemappt ist und ob dein Computer im selben Netzwerk wie das NAS ist. Für externen Zugriff solltest du Immich nicht einfach per Portweiterleitung öffentlich freigeben, sondern eine abgesicherte Zugriffsmethode wie VPN oder einen korrekt konfigurierten Reverse Proxy verwenden.
Ersetzt Immich mein Foto-Backup?
Nein. Immich kann Fotos und Videos vom Smartphone auf dein UGREEN NAS übertragen und deine Medien zentral verwalten. Für eine wiederherstellbare Sicherung brauchst du zusätzlich das vollständige UPLOAD_LOCATION, einen aktuellen Datenbank-Dump sowie die .env- und docker-compose.yml-Datei; externe Bibliotheken müssen separat berücksichtigt werden.
Fazit
Immich auf einem UGREEN NAS ist eine leistungsfähige Lösung für alle, die ihre Fotos und Videos lokal verwalten wollen, ohne auf Cloud-Dienste angewiesen zu sein.