IoBroker unter Docker auf der Synology DiskStation (v3)

Kurze Einleitung

Inhaltsverzeichnis

Nachdem sich in letzter Zeit bei mir einiges zum Thema ioBroker und Docker getan hat, und das alte Tutorial mittlerweile an der ein oder anderen Stelle nicht mehr auf die aktuelle Version passt, habe ich mich entschieden eine komplette Neuauflage zu machen. Damit wird praktisch die alte Version, welche ihr hier weiterhin einsehen könnt, eins zu eins abgelöst.

Bevor es aber mit dem neuen Tutorial los geht ein kurzer Überblick über die größten Veränderungen und Neuerungen.

Portainer als Ersatz der Docker Weboberfläche im DSM

Während ich im alten Tutorial noch die Webobefläche innerhalb des Disk Station Managers (DSM) gelobt und verwendet habe, so fehlen mir dort mittlerweile jedoch wichtige Möglichkeiten zur Administration. So ist es mir z.B. bisher nicht gelungen dem ioBroker-Container mit Hilfe von macvlan über die DSM-Oberfläche eine eigene IP-Adresse zu verpassen. Mit Portainer hingegen ist das innerhalb von zwei Minuten erledigt. Weiterhin bietet Portainer eine Reihe von komfortablen Features, wie z.B. die Verwendung von Templates, die die Erstellung von Containern in Zukunft noch einfacher machen werden. Dazu aber zu gegebener Zeit mehr in einem anderen Tutorial.

Änderungen im ioBroker Setup

Durch Änderungen im eigentlichen ioBroker-Setup und in der Art und Weise wie ioBroker später läuft, waren auch im Image umfangreiche Anpassungen notwendig. Durch z.B. die Verwendung eines separaten iobroker Users sowie die dadurch notwendig gewordene Verwendung von sudo ergeben sich sowohl Vor- als auch Nachteile. Größte Einschränkung ist dabei, dass es auf der DiskStation aktuell nicht möglich ist den neuen ioBroker im Host-Modus („gleiches Netzwerk wie Host verwenden“) zu betreiben (Stand 11.03.2019). Ursache ist hierbei die im aktuellen DSM verwendete, veraltete Kernel-Version.

Mount des ioBroker-Verzeichnises

Auch hier gibt es Neuerungen. So ist es ab sofort z.B. möglich beim ersten Start des Containers ein leeres oder ein mit einem Backup gefülltes Verzeichnis in /opt/iobroker zu mounten. Den Rest erledigt das Startup-Script. Die mühsame Prozedur mit dem hin und her kopieren wird dadurch deutlich vereinfacht bzw. entfällt.

Neue Umgebungsvariablen zur Konfiguration des Containers

Zusätzlich zu den bekannten Umgebungsvariablen für z.B. die Zeitzone kommen weitere Variablen hinzu die es ermöglichen Features zu aktivieren (z.B. dem AVAHI-Daemon) oder zusätzlich benötigte Linux-Pakete zu installieren. Es ist nicht auszuschließen dass dieses noch weiter ausgebaut wird. Aktuelle Informationen zu den möglichen Variablen finden sich immer im Readme auf Github

Was ich hingegen aus dem alten Tutorial übernehmen kann, sind die Links aus der Einleitung. Wer sich also für den Quellcode hinter meinem Projekt interessiert, der wird auf Github fündig. Wen nur das fertige Docker-Image interessiert, der ist im Docker Hub gut aufgehoben. Die passende Diskussion zum Docker Image findet ihr im ioBroker-Forum.

Hinweis: Weitere allgemein Infos und Grundlagen zu Docker findet ihr hier (docker.com) oder hier (Wikipedia)

Der Übersichtlichkeit halber habe ich meine Anleitung wieder auf mehrere Seiten verteilt. Das Inhaltsverzeichnis befindet sich wie gewohnt jeweils am Seitenanfang. Außerdem gilt weiterhin die Einladung über das Docker-Image zu diskutieren. Nutzt dazu gerne die Kommentare oder das ioBroker Forum.

About the author: André

André
Familienvater und bekennender Technik-Nerd. Beruflich unterwegs als Fachinformatiker für Systemintegration bei einem deutschen IT-Dienstleister. In der Freizeit begeisterter "Home-Automatisierer" bzw. "Smarthome-Bastler" und (zumindest bei schönem Wetter) gerne mit der Familie in verschiedenen Outdooraktivitäten unterwegs.

9
Hinterlasse einen Kommentar

avatar
10000
3 Kommentare
6 Antworten
0 Abonnenten
 
Meiste Antworten
Beliebtester Kommentar
5 Kommentatoren
MarcusAndréCHrisStevenThomas Letzte Kommentatoren
  Abonnieren  
Benachrichtige mich zu:
Marcus
Gast
Marcus

Hallo André, ersteinmal vielen Dank für deine super Arbeit. Ich habe schon deine erste „Anleitung“ zur Installation auf der Synology genutzt und lief auch bis heute. Nun habe ich aber ein Problem hier mit der neuen „Version“ hier über Portainer. Portainer usw. läuft alles. Also bei mir funktioiert die „iobroker“ Installation irgendwie nich, oder?? Ich hatte die „V3“ Version schon einmal erfolgreich testweise installiert und lief auch. Nun wollte ich das ganze noch einmal einrichten aber ohne Erfolg. Schon etliche mal den Container neu eingerichtet usw. alles ohne Erfolg. Vielleicht kannst Du sehen wo es klemmt 🙂 Vielen vielen Dank… Mehr lesen »

Steven
Gast
Steven

Hallo André,
danke danke für das neue sehr gut erklärte Tutorial, hat alles sehr gut funktioniert und mit dem Portainer lassen sich wirklich viele weitere Möglichkeiten Einstellen.
Wie z.B. eine extra ip des Container, läuft stabiler (beim Einrichten/Programmieren) da ich nur eine DS418play habe und es eigentlich kein Docker offiziell gibt aber da hab ich nicht die Erfahrung ob es daran lag oder es allgemein an die Weboberfläche der DS zu diskonnekt gekommen ist.
Aber im Betrieb ist es wie vorher sehr stabil 😀

Aber eine kleine Frage hätte ich noch, hast du ein USB-Stick (z.B. Zigbee) in betrieb?

mfg steven

Thomas
Gast
Thomas

Danke für dieses gute Tutorial wieder mal. Hatte schon die alte Version von Dir benutzt und nun auf meinem DS auf die 3er hochgerüstet. Im Grunde alles ohne große Probleme, habe allerdings als Slave-Host noch ein RPi laufen, der wollte sich aus dem Multihost nicht rausnehmen lassen mehr, kamen nur Fehlermeldungen. Hintergrund war der, dass ich bisher beim Docker das Netzwerk „host“ benutzt hatte, aber nun ja ein MACVLAN eingerichtet hatte mit einer anderen IP-Adresse. Lösung: Auf dem RPi eingeloggt im Ordner /opt/iobroker/iobroker-data die Datei iobroker.json zum editieren geöffnet und darin dann die alte IP vom ioBroker-Dockersystem geändert auf die… Mehr lesen »