Home Assistant via Docker auf einer Synology NAS installieren

You can find the English version of this guide here: Install Home Assistant on Synology NAS with Docker

Home Assistant ist für viele der “Hub” im Smart Home: lokal, erweiterbar, mit riesigem Ökosystem. Wenn du bereits eine Synology NAS hast, ist sie oft die perfekte Plattform, um Home Assistant als Container zu betreiben – ohne extra Raspberry Pi.

In dieser Anleitung installierst du Home Assistant in der aktuellen Stable-Version per Docker (Synology Container Manager) und bekommst ein Setup, das:

  • Updates sauber mitmacht
  • Konfiguration persistent speichert
  • Discovery im LAN (mDNS/SSDP) zuverlässig ermöglicht

TL;DR

  • DSM Container Manager öffnen → Projekt → neues Projekt aus docker-compose.yml
  • Container mit network_mode: host starten
  • Konfigurationsordner persistent mounten
  • Home Assistant danach unter http://<NAS-IP>:8123 öffnen

Voraussetzungen

  • Synology DSM 7.2+ (oder DSM-Version mit “Container Manager”), zum Beispiel Synology DS220+, DS720+, DS920+, etc.
  • Optional RAM-Erweiterung auf mindestens 2GB (empfohlen für Home Assistant)
  • Installiertes Paket Container Manager
  • Statische IP für die NAS ist empfehlenswert (oder DHCP-Reservation)

Warum host Netzwerkmodus?

Home Assistant lebt stark von Netzwerk-Discovery (mDNS/Bonjour, SSDP/UPnP, etc.). In der Praxis ist dafür auf NAS/Heimnetz häufig am unkompliziertesten:

  • network_mode: host

Damit hängt der Container direkt im Netzwerk-Stack der NAS. Das erspart viele Stolperfallen bei Multicast/Broadcast.

Schritt 1: Ordner für die Home-Assistant-Konfiguration anlegen

Lege auf deiner NAS einen Ordner an, in dem Home Assistant seine Daten persistent speichert.

Wichtig bei Synology: der Ordner muss wirklich existieren, sonst startet der Container nicht.

Empfohlene Struktur (als Projektordner für Container Manager):

  • /volume1/docker/homeassistant/
    • docker-compose.yml
    • config/ (dieser Ordner wird später nach /config in den Container gemountet)

Du kannst das per File Station anlegen.

Wenn du beim Start eine Fehlermeldung wie diese bekommst:

Bind mount failed: '/volume1/docker/homeassistant/config' does not exist

… dann stimmt der Pfad nicht oder der Ordner wurde nicht angelegt. Prüfe außerdem, ob deine NAS ggf. volume2 (oder ein anderes Volume) verwendet.

Schritt 2: docker-compose.yml erstellen

Erstelle im Projekt-Ordner (z.B. /volume1/docker/homeassistant/) eine Datei docker-compose.yml mit folgendem Inhalt:

 1services:
 2  homeassistant:
 3    container_name: homeassistant
 4    image: ghcr.io/home-assistant/home-assistant:stable
 5    network_mode: host
 6    restart: unless-stopped
 7    environment:
 8      - TZ=Europe/Berlin
 9    volumes:
10      - ./config:/config
11      - /etc/localtime:/etc/localtime:ro

Hinweise

  • image: ...:stable bedeutet: aktuelle Stable-Version. Wenn du lieber exakt pinnen willst, ersetze stable durch eine konkrete Version.
  • Bei network_mode: host brauchst (und darfst) du keine Ports wie 8123:8123 mappen.
  • TZ=Europe/Berlin sorgt für korrekte Zeit/Log-Zeiten.

Schritt 3: Projekt im Synology Container Manager anlegen

  1. Öffne Container Manager
  2. Gehe zu Projekt
  3. Erstellen → wähle den Ordner, in dem deine docker-compose.yml liegt
  4. Projektname z.B. homeassistant
  5. Bestätigen / Deploy

Nach dem Start sollte der Container laufen.

Schritt 4: Home Assistant öffnen

Öffne im Browser:

  • http://<NAS-IP>:8123

Der erste Start kann ein paar Minuten dauern, weil Home Assistant initial Daten lädt und die Struktur im /config Verzeichnis anlegt.

Updates (ohne Drama)

Wenn du :stable verwendest, bekommst du neue Versionen per Image-Update.

Update über die Synology UI

  • Container Manager → Images → Home-Assistant-Image aktualisieren
  • Projekt neu deployen (oder Container neu erstellen/neu starten – je nach DSM UI-Version)

Update per CLI (optional)

Wenn du SSH auf der NAS nutzt:

1docker compose pull
2
3docker compose up -d

Danach ist Home Assistant auf der neuen Version.

Backup / Restore

Alles Wichtige liegt in deinem gemounteten Ordner:

  • ./config (relativ zum Projektordner)

Wenn du diesen Ordner sicherst, hast du praktisch dein komplettes Home-Assistant-Setup (Integrationen, Automationen, Add-ons-Konfig, etc.).

Häufige Stolperfallen

1) Web UI nicht erreichbar

  • Prüfe, ob der Container läuft.
  • Prüfe NAS-Firewall-Regeln (DSM-Firewall) und VLAN/Netzsegment.
  • Bei host Mode: Zugriff ist immer http://<NAS-IP>:8123.

2) Discovery funktioniert nicht (Geräte werden nicht gefunden)

  • Stelle sicher, dass network_mode: host aktiv ist.
  • Prüfe, ob Router/VLAN Multicast blockt.

3) USB Zigbee/Z-Wave Stick wird nicht erkannt

Das ist abhängig vom Stick und DSM. Typisch brauchst du zusätzlich Device-Mappings (z.B. /dev/ttyUSB0) und ggf. Berechtigungen.

Wenn du mir sagst, welchen Stick du hast (z.B. Sonoff ZBDongle-E, ConBee II, SkyConnect), kann ich dir eine passende Compose-Variante ergänzen.

HTTPS einrichten (optional)

Home Assistant funktioniert problemlos über HTTP im lokalen Netzwerk. Wenn du aber ohne Browser-Warnungen arbeiten willst (und z.B. auch unterwegs via VPN sauber zugreifen möchtest), lohnt sich HTTPS.

Da viele Heimnetz-Setups keine öffentlich erreichbare Domain für Home Assistant verwenden (und oft auch gar nicht wollen), ist eine sehr praktische Lösung:

  • eine eigene Root CA (die du auf deinen Geräten als vertrauenswürdig installierst)
  • ein Server-Zertifikat für eine lokale Domain wie homeassistant.abt
  • Synology Reverse Proxy als HTTPS-Termination vor Home Assistant

Die ausführlichen Grundlagen habe ich hier beschrieben:

  • Root CA erstellen: /blog/2025/10/13/create-custom-root-certificate-authority/
  • HTTPS-Zertifikate mit eigener Root CA erstellen: /blog/2025/10/15/create-self-signed-https-certificates-with-custom-root-ca/

Schritt 1: Lokale Domain auf deine NAS zeigen lassen

Lege in deinem DNS (Router, Pi-hole, AdGuard Home, UniFi, etc.) einen A-Record an, z.B.:

1homeassistant.abt → 192.168.1.50

Wichtig:

  • Nutze eine Domain, die nur bei dir im Netz aufgelöst wird.
  • Verwende idealerweise eine feste IP (oder DHCP-Reservation) für die NAS.

Schritt 2: Zertifikate erstellen (Root CA + Server-Zertifikat)

  1. Erstelle (einmalig) deine Root CA und installiere das Root-CA-Zertifikat auf allen Geräten, die Home Assistant nutzen sollen.
  2. Erstelle ein Server-Zertifikat für deine Domain (z.B. homeassistant.abt).

Empfehlung für die SANs (Subject Alternative Names):

  • DNS.1 = homeassistant.abt
  • Optional: IP.1 = 192.168.1.50 (NAS-IP)

Hinweis zur Gültigkeit: Wenn du Apple-Geräte im Einsatz hast (Safari/iOS), bleib bei max. 397 Tagen, sonst wird das Zertifikat ggf. abgelehnt.

Am Ende solltest du typischerweise folgende Dateien haben:

  • homeassistant.abt.key (Private Key)
  • homeassistant.abt.crt (Server-Zertifikat)
  • optional homeassistant.abt-fullchain.crt (Zertifikat + Root CA)

Schritt 3: Zertifikat in DSM importieren

In DSM:

  1. SystemsteuerungSicherheitZertifikat
  2. HinzufügenZertifikat importieren
  3. Importiere
    • Zertifikat: homeassistant.abt.crt
    • Privater Schlüssel: homeassistant.abt.key
    • Zwischenzertifikat/CA-Bundle: (falls vorhanden) homeassistant.abt-fullchain.crt oder deine Root-CA-Datei

Danach kannst du das Zertifikat einem Dienst/Hostnamen zuweisen.

Schritt 4: Synology Reverse Proxy für Home Assistant anlegen

Der Reverse Proxy übernimmt HTTPS und leitet intern an Home Assistant (Port 8123) weiter.

  1. SystemsteuerungAnmeldeportalErweitertReverse Proxy
  2. Erstellen

Beispiel-Konfiguration:

  • Quelle
    • Protokoll: HTTPS
    • Hostname: homeassistant.abt
    • Port: 443
  • Ziel
    • Protokoll: HTTP
    • Hostname: 127.0.0.1
    • Port: 8123

Wichtig:

  • WebSocket-Unterstützung aktivieren (Home Assistant nutzt WebSockets für UI/Realtime-Updates)
  • Optional: HTTP → HTTPS Redirect aktivieren (wenn du zusätzlich eine HTTP-Regel anlegst)

Schritt 5: Home Assistant für Reverse Proxy konfigurieren

Wenn Home Assistant hinter einem Reverse Proxy läuft, sollte er die Forwarded-Header akzeptieren.

Öffne dazu in deinem gemounteten Config-Ordner die Datei configuration.yaml und ergänze (oder erweitere) folgenden Block:

1http:
2  use_x_forwarded_for: true
3  trusted_proxies:
4    - 127.0.0.1
5    - ::1

Danach Home Assistant neu starten (Container restart bzw. Projekt redeploy).

Zugriff

Danach erreichst du Home Assistant sauber via:

  • https://homeassistant.abt

Wenn deine Root CA auf dem Client-Gerät korrekt installiert ist, gibt es keine Zertifikatswarnung.


Let's Work Together

Looking for an experienced Platform Architect or Engineer for your next project? Whether it's cloud migration, platform modernization or building new solutions from scratch - I'm here to help you succeed.

New Platforms
Modernization
Training & Consulting

Comments

Twitter Facebook LinkedIn WhatsApp