NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
@hetti72 sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Für mich als IT´ler ist ja eigentlich ein NoGo eine Beta in Produktiven Umgebungen einzusetzen, daher kam meine Frage.
Gerade dann solltest du keine Scheu haben auch mal eine Beta Version ein zu setzen. Immerhin weißt du dir dann ja im Fall der Fälle zu helfen oder weißt zumindest was das Wort Backup bedeutet...
@hetti72 sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Noch eine zusätzliche Frage: Ich plane mit dem 5er Image Redis als StatesDB einzusetzen. Ist es Sinnvoll direkt den neuen Container mit Redis zu starten und das Backup einzuspielen oder die Umstellung auf erst nachträglich zu machen?
Da habe ich keine Erfahrungswerte. Ich würde vermutlich erst updaten und wenn alles wieder läuft auf redis umsteigen.
MfG,
André -
@hetti72
Daher ich vor allem mit Redis und Docker wirklich super viele Probleme hatte, ganz klarer Tipp: Erst Updates, dann ganz regulär von file zu Redis Switchen. Beides gleichzeitig ist bei mir immer schief gegangen. -
@andre said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@gutgut30 Zumindest an alles was ich selbst verwende.
Hat übrigens 1a geklappt mit dem StartUp Script. Es hat mich zwar wirklich Zeit und Nerven gekostet, einige OS Installationen und viel geteste - aber inzwischen läuft der iobroker dank deines Containers super stabil.
Ich betreibe die Nummer auf einem HTPC mit LibreElec als OS und Docker als Plugin von LibreElec.
Läuft einwandfrei - auch mit Bluetooth (Radar2 & BLE Adapter) sowie einem eigenen Redis Container.Besten Dank dafür!
Ich wollte ggf noch mal einen MySQL Container dazu setzen, Kämpfe aber aktuell noch etwas mit den Netzwerksettings & Startreihenfolgen der Container. Das ist aber ein Problem mit meinem Docker Wissen als mit deinem Container
-
@gutgut30 sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@hetti72
Erst Updates, dann ganz regulär von file zu Redis Switchen. Beides gleichzeitig ist bei mir immer schief gegangen.Ok, dann mache ich das auch so. Danke
-
Konntest du das Problem verstehen? Ich leider nicht.
Verstehe zwar, dass die Rechte nicht passen...hilft aber nicht weiter wenn ich das nicht ändern kann. Der Support im Adapter beschränkt sich leider nur auf die Raspberry-Lösung.
Würde mich freuen wenn du da ggf. eine Lösung hättest.
Danke + Gruß
Sweatchuck -
@Sweatchuck Leider dwurden meine Fragen von @Thomas-Braun noch nicht beantwortet. Für mich klingt das:
@Thomas-Braun sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Da aus irgendwelchen mir unbekannten Gründen das Modul nicht automatisch nachgezogen wird baut man das meist manuel.
nach einem Adapter Thema. Soweit ich das verstanden habe muss ergründet werden warum das Paket bei der Installation des Adapters nicht ordnungsgemäß installiert wird.
Aus Sicht eines Anwenders ist ein "baut man das meist manuell" keine optimale Lösung.
Hier bin auch ich auf die Hilfe des Adapter Entwicklers angewiesen.
Sicher könnte man eine Art Workaround Scripten, aber solange das Thema so gelagert ist wie ich das aktuell sehe ist das Murks. Man sollte das Problem immer an der Wurzel lösen... -
@andre sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@Sweatchuck Leider dwurden meine Fragen von @Thomas-Braun noch nicht beantwortet. Für mich klingt das:
@Thomas-Braun sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Da aus irgendwelchen mir unbekannten Gründen das Modul nicht automatisch nachgezogen wird baut man das meist manuel.
nach einem Adapter Thema. Soweit ich das verstanden habe muss ergründet werden warum das Paket bei der Installation des Adapters nicht ordnungsgemäß installiert wird.
Aus Sicht eines Anwenders ist ein "baut man das meist manuell" keine optimale Lösung.
Hier bin auch ich auf die Hilfe des Adapter Entwicklers angewiesen.
Sicher könnte man eine Art Workaround Scripten, aber solange das Thema so gelagert ist wie ich das aktuell sehe ist das Murks. Man sollte das Problem immer an der Wurzel lösen...Ich bin nicht der Maintainer des Adapters. Ich kann da nur aus meiner 'Anwendersicht' was zu sagen. Das Ding baut nicht automatisch, also baue ich das selber. Von der Inneren Magie von npm usw. habe ich keine Ahnung.
canvas wird aber ja auch von anderen Adaptern benötigt, das scheint also irgendwie grundsätzlich da zu klemmen. -
@Thomas-Braun Danke für die Rückmeldung.
@Sweatchuck Ich weiß nicht so recht was ich da tun kann. Habe mir den Adapter gerade mal angeschaut, aber ohne Staubsauger kann ich da halt nicht viel sehen/ ausprobieren. Das was hier steht hast du gemacht? Also entweder das
build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev
bei der Erstellung des Containers in die Environment Variable "PACKAGES" oder alternativ in der Kommandozeile des Containers (als root in /opt/iobroker) ein:
apt-get update apt-get install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev
Und anschließend canvas installieren:
npm install canvas --unsafe-perm=true
???
MfG,
André -
@andre @Sweatchuck
Hi ihr beiden, glücklicherweise habe ich auch nen Xiaomi Sauger und hab mich mal kurz drangemacht die Karte ans laufen zu bekommen. Hier mein Vorgehen:Normalerweise sollten hier die von andre beschriebenen Packages reichen: build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev
Sobald der Container dann gestartet ist gehst du in die Einstellungen der javascript.0 Instanz, dort trägst du unter "Zusätzliche npm Module" folgende beiden ein: request canvas
Dann auf speichern, danach siehst du im Log das die Module installiert werden. Wenn alles fertig ist gehst du in die Console vom Container. Im Ordner /opt/iobroker führst du folgenden Befehl aus:
iobroker rebuild mihome-vacuum --installDanach sollte die Karte laufen.
-
@duffbeer2000 said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
iobroker rebuild mihome-vacuum --install
Servus,
hat bei mir leider nicht funktioniert. Karten bleiben leer.
Habe die Befehle von Andre über die Console ausgeführt und dann nochmals den Tipp von dir. Leider keine Änderung.
Trotzdem Danke!
Gruß
Sweatchuck -
@Sweatchuck
@duffbeer2000
@andreKomando zurück:
Es funktioniert!!! Danke
Der Staubsauger musste einmal gestartet werden. Dann kommt der Link zur map an.
Besten Dank
Sweatchuck -
@hetti72 said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@gutgut30 sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Letztendlich kann ich die IP nicht mal anpingen und verstehe nicht warum:
root@iobrokertest:/opt/iobroker# ping -c 10 192.168.69.18 PING 192.168.69.18 (192.168.69.18) 56(84) bytes of data. From 192.168.69.205 icmp_seq=1 Destination Host Unreachable From 192.168.69.205 icmp_seq=2 Destination Host Unreachable
Hat jemand einen Tipp für mich, wie auch an den redis-server auf dem host komme?Wenn du ein MACVLAN im Docker konfiguriert hast (wovon ich ausgehe weil der Container ne andere IP hat als dein Host), kannst du aus dem Container den Host über die "normale" IP nicht erreichen, das wird von Docker geblockt.
Es gibt 2 möglichkeiten das zu lösen:
Du konfigurierst in Docker ein Bridge (172.17.x.x) oder User_bridge (172.18.x.x) Netzwerk. Dann hat der iobroker Container zusätzlich z.b. die 172.18.0.2 und der OMV Host die 172.18.0.1 und darüber solltest du die Redis Instanz erreichen können (wenn die auf alle IP Adressen des Hosts lauscht).Oder du konfigurierst auf dem OMV Host eine zusätzliches Netzwerkinterface als Bridge zwischen dem MACVLAN und der physikalischen Netzwerkschnittstelle deines OMV Hosts. Damit hebelst du die MACVLAN Beschränkung aus und du solltest den Host aus dem Container über die 192er Adresse erreichen können. Das wurde hier in dem Thread auch schonmal irgendwo beschrieben.
gruß,
FrankKannst du evtl. nochmal genau beschreiben wie man die MACVLAN unter docker einrichtet? Ich benutze Docker auf dem RPI4. Zum Konfigurieren verwende ich Portainer. Doch scheinbar gibt es hier Probleme. Ich hab auch schon das eine oder andere Video gehen. Wenn ich dann den Container mir Netzwerk konfigurieren möchte kommt immer eine Fehlermeldung, dass das Netzwerk nicht eingerichtet werden kann.
Mit freundlichen Grüßen
Stefan -
@stsch83 sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Kannst du evtl. nochmal genau beschreiben wie man die MACVLAN unter docker einrichtet?
Ich hab mich da an die Anleitung von Andre auf seiner Seite gehalten: https://buanet.de/2019/05/iobroker-unter-docker-auf-der-synology-diskstation-v3/
Wenn ich dann den Container mir Netzwerk konfigurieren möchte kommt immer eine Fehlermeldung, dass das Netzwerk nicht eingerichtet werden kann.
Aber das Netzwerk hast du schon vorher unter "Networks" in Portainer eingerichtet bzw. konfiguriert? Kannst du davon mal nen Screenshot machen? Da kann man die meisten Fehler einbauen.
gruß,
Frank -
@hetti72 said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@stsch83 sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Kannst du evtl. nochmal genau beschreiben wie man die MACVLAN unter docker einrichtet?
Ich hab mich da an die Anleitung von Andre auf seiner Seite gehalten: https://buanet.de/2019/05/iobroker-unter-docker-auf-der-synology-diskstation-v3/
Wenn ich dann den Container mir Netzwerk konfigurieren möchte kommt immer eine Fehlermeldung, dass das Netzwerk nicht eingerichtet werden kann.
Aber das Netzwerk hast du schon vorher unter "Networks" in Portainer eingerichtet bzw. konfiguriert? Kannst du davon mal nen Screenshot machen? Da kann man die meisten Fehler einbauen.
gruß,
FrankHat funktioniert. Danke
-
@hetti72 Weißt du wie man das Netzwerk mit docker-compose oder ansible anlegen kann?
-
Ich habe jetzt erfolgreich mit Backup/Restore von der buanet/iobroker:v4.2.4beta auf die v5.0.2beta gewechselt. Läuft einwandfrei.
Habe da in dem Zusammenhang mal eine Frage zum Betrieb von REDIS:
Ich hatte für das Restore auch einen leeren REDIS-Container bereit gestellt. Beim Restore von wurden hier jedoch nur die States, nicht aber die Inhalte zurück gesichert.- Ist das so gewollt?
- Soll die redis-Datenbank vor einem Restore nicht gelöscht werden?
Danke & Gruß, Ralf
-
@hetti72 Weißt du wie man das Netzwerk mit docker-compose oder ansible anlegen kann?
Puhh, sorry nicht wirklich. Docker-compose hab ich noch nie benutzt. Ansible ja, da mache ich Beruflich viel damit, aber wiederum nicht in richtung Docker.
Ich habe mir die Doku des docker_network modules von Ansible mal angeschaut. Sieht nicht so kompliziert aus, aber mangels Testmöglichkeit kann ich da nicht wirklich weiterhelfen.
Ich nutze Docker privat nur auf meinem Synology NAS und da in Verbindung mit Portainer.gruß,
Frank -
@hetti72 Ok, danke. Nur zur Info und evt. zur Inspiration für andere. Mein Setup:
Raspberry 4
Docker
Portainer
Heimdall
ioBrokerDamit ich mir später mal keine Gedanken machen muss wenn mal was Kaputt geht wollte ich eigentlich mit Docker einen Swarn (Ausfallsicherheit) machen und diesen allerdings mit Ansible "konfigurieren" lassen. Das Funktioniert auch schon ganz gut. Nur leider weiß ich noch nicht wie ich das Netzwerk für den ioBroker (Macvlan) anlegen kann. Aber ich denke das wird schon noch.
-
@stsch83 Wenn du einen Docker Swarm auf deinem Raspberry 4 von z.B. zwei ioBroker Containern betreibst dann has du doch doppelte Auslastung und kommst recht schnell ans Limit oder?
-
@duffbeer2000 ne ich hab das andersrum. Ich hab mehrere RPIs und wenn einer kaputt geht dann shiftet ein Master den Container auf einen anderen RPI.