Immich auf Synology NAS installieren: Google-Photos-Alternative mit automatischem Handy-Backup
So richtest du Immich als selbstgehostete Google-Photos-Alternative auf deiner Synology NAS ein - mit Container Manager, PostgreSQL und automatischem Foto-Backup vom iPhone oder Android-Handy über Port 2283.

Du suchst eine eigene Google-Photos-Alternative, bei der deine Fotos und Videos auf deiner Hardware bleiben? Mit Immich richtest du auf deiner Synology NAS ein selbstgehostetes Foto-Backup ein, das deine Aufnahmen automatisch vom iPhone oder Android-Handy sichert, nach Personen und Orten sortiert und über eine schnelle Web-Oberfläche durchsuchbar macht. In dieser Anleitung installierst du Immich Schritt für Schritt über den Container Manager von DSM 7.2 als Compose-Projekt - inklusive PostgreSQL-Datenbank, Redis und Machine-Learning-Container für die Gesichts- und Objekterkennung. Die Anleitung richtet sich an alle, die ihre Foto-Mediathek dauerhaft selbst kontrollieren und nicht länger an Cloud-Abos binden wollen.
Was ist Immich und warum lohnt es sich?
Immich ist eine quelloffene Foto- und Video-Backup-Lösung, die du selbst hostest. Optisch und funktional orientiert sie sich stark an Google Fotos: Zeitleiste, Alben, Geo-Karte, automatische Personenerkennung und eine intelligente Suche ("zeige mir alle Fotos vom Strand") gehören zum Funktionsumfang. Der große Unterschied: Deine Daten liegen ausschließlich auf deiner NAS, es gibt keine monatlichen Gebühren und keine Speicherlimits ausser deiner eigenen Festplatte.
Technisch besteht Immich aus mehreren Containern, die zusammenspielen: dem immich-server (Web-Oberfläche und API), einem immich-machine-learning-Container für die KI-gestützte Erkennung, einer PostgreSQL-Datenbank mit Vektor-Erweiterung sowie einem Redis-kompatiblen Cache (Valkey). Genau deshalb installierst du Immich nicht als einzelnen Container, sondern als Compose-Projekt. Die offizielle docker-compose.yml bringt alle Komponenten passend aufeinander abgestimmt mit.
Voraussetzungen
- Synology NAS mit DSM 7.2 oder neuer und installiertem Paket Container Manager (Paket-Zentrum).
- Ein x86-64-Modell mit Intel-/AMD-CPU (z. B. Plus-Serie wie DS220+, DS224+, DS923+). ARM-Modelle werden von Immich offiziell nicht unterstützt.
- Mindestens 4 GB RAM, besser 6 bis 8 GB - der Machine-Learning-Container ist speicherhungrig. Auf 2-GB-Modellen läuft Immich nur sehr eingeschränkt.
- Ausreichend freier Speicher auf deinem Volume für die gesamte Foto-Mediathek.
- Der Host-Port 2283 muss frei sein (Web-UI und API).
- Immich-App auf dem Handy: aus dem Apple App Store (iOS) bzw. Google Play Store / F-Droid (Android).
Schritt 1: Ordnerstruktur in der File Station anlegen
Lege zuerst die Verzeichnisse an, in denen Compose-Datei, Foto-Uploads und Datenbank liegen. Öffne die File Station und erstelle - falls noch nicht vorhanden - einen gemeinsamen Ordner docker. Darin legst du folgende Struktur an:
/volume1/docker/immich
/volume1/docker/immich/library
/volume1/docker/immich/postgres
In library landen später deine hochgeladenen Original-Fotos und -Videos, in postgres die Datenbankdateien. Wichtig: Lege den Datenbank-Ordner immer auf einem lokalen Volume an. Netzwerkfreigaben (SMB/NFS) sind für die PostgreSQL-Daten nicht unterstützt und führen zu Datenkorruption.
Schritt 2: docker-compose.yml und .env vorbereiten
Immich stellt eine offizielle docker-compose.yml und eine example.env bereit. Am saubersten holst du dir immer die aktuelle Version direkt aus dem Release. Erstelle in /volume1/docker/immich eine Datei docker-compose.yml mit folgendem Inhalt (entspricht dem offiziellen Stack, hier kompakt mit den vier Diensten):
name: immich
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
volumes:
- ${UPLOAD_LOCATION}:/data
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
ports:
- '2283:2283'
depends_on:
- redis
- database
restart: always
immich-machine-learning:
container_name: immich_machine_learning
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
volumes:
- model-cache:/cache
env_file:
- .env
restart: always
redis:
container_name: immich_redis
image: docker.io/valkey/valkey:9
restart: always
database:
container_name: immich_postgres
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
volumes:
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
restart: always
volumes:
model-cache:
Erstelle daneben eine Datei .env (genau so benannt, mit führendem Punkt) im selben Ordner. Sie hält deine Pfade und Zugangsdaten:
UPLOAD_LOCATION=/volume1/docker/immich/library
DB_DATA_LOCATION=/volume1/docker/immich/postgres
TZ=Europe/Berlin
IMMICH_VERSION=release
DB_PASSWORD=BitteEinSicheresPasswort
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
Ändere DB_PASSWORD unbedingt auf ein eigenes, sicheres Passwort und verwende dabei nur Buchstaben und Ziffern (A-Z, a-z, 0-9). Sonderzeichen können beim Einlesen der .env Probleme verursachen. Den Tag release kannst du für den Produktivbetrieb später auf eine feste Versionsnummer pinnen (siehe Abschnitt Updates), damit ein Update nicht unbeabsichtigt erfolgt.
Schritt 3: Projekt im Container Manager erstellen
Wechsle nun in den Container Manager und lege das Compose-Projekt an:
- Öffne im Container Manager links den Reiter Projekt und klicke auf Erstellen.
- Vergib als Projektname
immich. - Wähle bei "Pfad" den Ordner
/volume1/docker/immich. Der Container Manager erkennt die dort liegendedocker-compose.ymlautomatisch ("Quelle: vorhandene docker-compose.yml verwenden"). - Bestätige die folgenden Dialoge (Web-Portal-Einstellungen kannst du überspringen).
- Klicke auf Fertig. Der Container Manager lädt jetzt die Images herunter und startet die vier Container.
Der erste Start dauert einige Minuten, da die Images mehrere Hundert Megabyte groß sind. Du verfolgst den Fortschritt im Projekt-Log. Wenn alle vier Container den Status running haben, ist Immich einsatzbereit.
Schritt 4: Web-Oberfläche öffnen und Admin-Konto anlegen
Öffne in deinem Browser die Adresse http://NAS-IP:2283, also zum Beispiel http://192.168.1.50:2283. Beim allerersten Aufruf erscheint die Einrichtungsseite:
- Lege über Admin-Konto erstellen deinen ersten Benutzer mit E-Mail, Passwort und Namen an. Dieses Konto ist der Administrator der Instanz.
- Melde dich anschließend mit diesen Zugangsdaten an.
- Du landest in einer noch leeren Zeitleiste - das ist normal, es wurden noch keine Fotos hochgeladen.
Optional kannst du unter Administration weitere Benutzer für Familienmitglieder anlegen, sodass jeder seine eigene Mediathek bekommt.
Schritt 5: Automatisches Handy-Backup einrichten (iOS und Android)
Jetzt verbindest du dein Smartphone, damit neue Fotos automatisch auf der NAS landen:
- Installiere die Immich-App aus dem App Store (iOS) bzw. Play Store oder F-Droid (Android).
- Beim Start fragt die App nach der Server-URL. Trage
http://NAS-IP:2283ein (im Heimnetz). Melde dich mit demselben Konto wie in der Web-UI an. - Öffne in der App das Menü Backup (bei iOS unter dem Profil-/Einstellungssymbol).
- Wähle die Alben aus, die gesichert werden sollen (z. B. "Aufnahmen"/"Camera Roll").
- Aktiviere Hintergrund-Backup, damit neue Aufnahmen automatisch hochgeladen werden, sobald die App im Hintergrund läuft.
Der erste Durchlauf kann bei großen Mediatheken länger dauern. Lass das Handy dabei am Ladegerät und im WLAN. Danach werden nur noch neue Aufnahmen nachgeladen.
Zugriff von unterwegs (Reverse Proxy)
Im Heimnetz reicht die direkte Adresse mit Port 2283. Soll das Backup auch unterwegs über Mobilfunk funktionieren, brauchst du einen verschlüsselten Zugang von außen. Empfohlen ist ein Reverse Proxy mit HTTPS - entweder über den in DSM integrierten Reverse Proxy (Systemsteuerung -> Anmeldeportal -> Erweitert -> Reverse Proxy) mit einer eigenen Subdomain und gültigem Zertifikat, oder über einen separaten Container wie Nginx Proxy Manager.
Beachte dabei: DSM belegt die Ports 80 und 443 selbst. Wenn du einen eigenen Proxy-Container betreibst, weise ihm alternative Host-Ports zu (z. B. 8080/8443) oder verschiebe die DSM-Ports. In der Immich-App trägst du dann statt der internen IP deine externe Adresse ein, etwa https://immich.deinedomain.de. Aus Sicherheitsgründen solltest du den Port 2283 niemals direkt und unverschlüsselt ins Internet weiterleiten.
Updates und Wartung
Immich entwickelt sich schnell weiter. Ein Update führst du so durch:
- Öffne im Container Manager das Projekt immich.
- Stoppe das Projekt, wähle Aktion -> Erstellen bzw. nutze die Funktion zum Neu-Aufbauen, damit die aktuellen Images gezogen werden.
- Starte das Projekt wieder. Immich führt anstehende Datenbank-Migrationen beim Start automatisch durch.
Für den Produktivbetrieb empfiehlt es sich, in der .env statt release eine feste Versionsnummer einzutragen (Tag pinnen) und vor jedem größeren Update die Release-Notes auf der Immich-Webseite zu lesen, da gelegentlich Breaking Changes auftreten.
Backup deiner Immich-Daten
Immich ersetzt kein Backup - es ist selbst eines, das aber ebenfalls gesichert gehören sollte. Nimm die Ordner /volume1/docker/immich/library (deine Original-Fotos) und /volume1/docker/immich/postgres (die Datenbank) in Hyper Backup auf. Sichere die Datenbank möglichst bei gestopptem Projekt oder per Datenbank-Dump, damit sie konsistent ist. Eine zusätzliche Kopie auf ein externes Ziel (USB-Platte oder Cloud-Backup) schützt vor dem Ausfall der NAS.
Troubleshooting
- Web-UI nicht erreichbar: Prüfe im Container Manager, ob alle vier Container laufen, und ob Port 2283 nicht anderweitig belegt ist.
- Machine-Learning-Container startet neu (Out of Memory): Zu wenig RAM. Auf kleinen Modellen die KI-Funktionen reduzieren oder den ML-Container nur temporär laufen lassen.
- Datenbank startet nicht: Liegt der
postgres-Ordner versehentlich auf einer Netzwerkfreigabe? Verschiebe ihn auf ein lokales Volume. - App kann sich nicht verbinden: Server-URL inklusive
http://und Port:2283prüfen; im Heimnetz die lokale NAS-IP verwenden. - Sonderzeichen-Fehler beim Start: Prüfe das
DB_PASSWORD- nur Buchstaben und Ziffern verwenden.
Fazit
Mit Immich auf der Synology NAS hast du eine vollwertige, datenschutzfreundliche Alternative zu Google Fotos in Betrieb genommen. Deine Aufnahmen werden automatisch vom Handy gesichert, intelligent durchsucht und bleiben dabei komplett unter deiner Kontrolle. Der Aufwand beschränkt sich dank Container Manager auf wenige Schritte. Achte für den dauerhaften Betrieb auf ausreichend RAM, regelmäßige Updates, ein Backup der Volumes und - falls du von unterwegs zugreifst - auf einen sauber abgesicherten Reverse Proxy mit HTTPS.
Weitere Anleitungen in den Kategorien Synology / NAS und Docker.
Quellen: Immich Projektseite, Immich Docker-Compose-Doku, Immich auf GitHub