NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
Hallo zusammen
Wollte gerade den ioBroker auf meiner no DS412+ installieren, doch er bricht immer bei 262MB Download ab…
Hat mir jemand bitte einen Tipp.
-
Hallo Andre,
Kann zur Zeit leider nicht zeitnah antworten, da wir einen Umzug vor uns haben mit eine Riesen Renovierung und im Januar kommt dann das neue Aufsetzen von Homematc und Co im neuen Haus.
Iobroker läuft zur zeit in der alten Wohnung, um das morgendliche Starten im Griff zu bekommen.
Leider läuft es immer noch nicht. Immer noch das gleiche Fehler Bild, läuft nur jedes x beliebige mal mit an, nach dem morgendlichen Aufwachen.
Auch ein restart des Containers bringt nichts.
Sobald ich im Terminal „iobroker Start“ eingebe, läuft es sofort an.
Kann man das nicht automatisieren?
Gruß
Dirk (gingo) `
Hallo Dirk,
wie hast du es gemacht? Per neues Image oder über die Kommandozeile?
Ich habe/ hatte den Fehler zwar immer nur sporadisch, aber seit meiner Änderung und nunmehr mindestens 7 Restarts der DS habe ich nicht einen Fall, bei dem ioBroker nicht korrekt angelaufen ist.
Gibt es sonst noch jemanden, der hier mit liest und Probleme mit dem automatischen Start beim Neustarten oder Aufwecken der DS hat?
Der Befehlt "iobroker start" ist ja bereits automatisiert… mit der startup.sh wird der Befehl ja bei jedem Container-Start aufgerufen...
Hallo zusammen
Wollte gerade den ioBroker auf meiner no DS412+ installieren, doch er bricht immer bei 262MB Download ab…
Hat mir jemand bitte einen Tipp. `
Hallo Hanan,so wird dir niemand helfen können. Wir wissen ja gar nicht was wann wo abbricht. An welcher Stelle befindest du dich?
Ich gehe jetzt mal davon aus, dass Docker bereits läuft und du das Image laden willst. Du lädst über Docker das buanet/iobroker Image?
Kannst du andere, ähnlich große Images laden? Was sagt Google? Ich sehe das Problem irgendwo auf der DS bzw. bei Docker auf der DS. Gibt das Synology-Forum vielleicht eine Antwort?
MfG,
André
-
Hallo Andre,
auch bei mir funktioniert der Autostart nicht. Dies hat er seitdem ich das Docker-Image verwende bisher noch nie gemacht, ich habe eine DS1815+ .
Ob ich die “richtige” startup.sh und am “korrekten” Ort habe weiß ich leider nicht genau. Wie müsste diese denn aussehen und wo liegen?
Ich habe gestern noch einmal die aktuelle Datei heruntergeladen und einen neuen Container damit erstellt, auch dieses musste ich in der Konsole starten.
BG
Alexander
-
Hallo Andre,
auch bei mir funktioniert der Autostart nicht. Dies hat er seitdem ich das Docker-Image verwende bisher noch nie gemacht, ich habe eine DS1815+ .
Ob ich die “richtige” startup.sh und am “korrekten” Ort habe weiß ich leider nicht genau. Wie müsste diese denn aussehen und wo liegen?
Ich habe gestern noch einmal die aktuelle Datei heruntergeladen und einen neuen Container damit erstellt, auch dieses musste ich in der Konsole starten.
BG
Alexander `
Hallo Alexander,
was heißt er hat das bisher noch nie gemacht? Hast du irgendwas verändert bevor das Problem jetzt bei dir aufgetreten ist?
Die aktuelle startup.sh liegt immer hier: https://github.com/buanet/docker-iobrok … startup.sh
Im Image sollte sie dann unter "opt/scripts" liegen.
Hast du was im Protokoll wenn du den Container startest? Falls ja, was?
MfG,
André
-
Hallo Andre,
nach meinem Umzug nach Docker ist iobroker noch nie automatisch gestartet. Ich habe iobroker immer per Terminal gestartet.
Die startup.sh habe ich nun unter "opt" abgespeichert, Details siehe hier:
Wenn ich den Container starte erhalte ich unter Protokoll dies hier:
Unter Prozess sehe ich zuerst dies:
und nach ca. 30 Sekunden das hier:
Irgendwie will es nicht klappen. Die startup.sh habe ich schon neu angelegt mit dem von Dir unter Github angegeben Inhalt, jedoch ohne Änderung des Ergebnis.
Beste Grüße
Alexander
-
Namd,
auch an dieser Stelle nochmal Vielen Dank an André für das Image und die echt ausführliche Anleitung.
Da ich mich erst seit kurzem mit der ganze "SmartHome" Geschichte beschäftige habe ich leider auch gar keine Erfahrung im Umgang mit ioBroker und um André nicht immer Privat Nerven zu müssen wende ich mich nun mal an Euch
Aktuell nutze ich die selbe Backupmethode wie in der Anleitung beschrieben wurde.
Sicherheitshalber soll man ja ioBroker vor dem beenden des Containers selbst erst mal beenden wofür André ja ebenfalls ein kleines Script geschrieben hat.
Daher nun die Frage an Euch wie ich dieses Script in ioBroker einbinden kann um es dann Zeitgesteuert vor dem eigentlichen Backup ausführen zu lassen? so das sich ioBroker quasi selbst beenden …
Im Idealfall wäre es Super wenn mir jemand Screens von den Einstellungen unter dem Reiter "Script" anfertigen kann oder halt ne Schrtt für Schritt Anleitung
VG
-
Hallo Andre,
nach meinem Umzug nach Docker ist iobroker noch nie automatisch gestartet. Ich habe iobroker immer per Terminal gestartet.
Die startup.sh habe ich nun unter "opt" abgespeichert, Details siehe hier: filename="startup.sh.PNG" index="3">~~
Wenn ich den Container starte erhalte ich unter Protokoll dies hier: filename="Protokoll.PNG" index="2">~~
Unter Prozess sehe ich zuerst dies: filename="Prozesse nach Start.PNG" index="1">~~
und nach ca. 30 Sekunden das hier: filename="Prozesse nach Start ca. 30 sec.PNG" index="0">~~
Irgendwie will es nicht klappen. Die startup.sh habe ich schon neu angelegt mit dem von Dir unter Github angegeben Inhalt, jedoch ohne Änderung des Ergebnis.
Beste Grüße
Alexander `
Hallo Alexander,
ich habe mit irgendeiner Version des Images mal die Scripte verschoben und umbenannt… Benenne mal dein Script in "iobroker_startup.sh" um. Im Screenshot sieht man auch, dass er versucht das Script auf zu rufen... Danach sollte es auch mit dem Autostart klappen...
MfG,
André
Gesendet von iPad mit Tapatalk Pro
-
Hallo,
Ich hatte versucht das Docker Image laufen zu lassen.
Wenn ich die Laufwerke der Synology nicht mounte geht es. Mounte ich die, fährt er nicht hoch.
Desweiteren würde ich gerne eine fertige Konfiguration vom RasPi in den Docker nehmen. Über Backup und Restore geht es nicht.
-
Namd,
auch an dieser Stelle nochmal Vielen Dank an André für das Image und die echt ausführliche Anleitung.
Da ich mich erst seit kurzem mit der ganze "SmartHome" Geschichte beschäftige habe ich leider auch gar keine Erfahrung im Umgang mit ioBroker und um André nicht immer Privat Nerven zu müssen wende ich mich nun mal an Euch
Aktuell nutze ich die selbe Backupmethode wie in der Anleitung beschrieben wurde.
Sicherheitshalber soll man ja ioBroker vor dem beenden des Containers selbst erst mal beenden wofür André ja ebenfalls ein kleines Script geschrieben hat.
Daher nun die Frage an Euch wie ich dieses Script in ioBroker einbinden kann um es dann Zeitgesteuert vor dem eigentlichen Backup ausführen zu lassen? so das sich ioBroker quasi selbst beenden …
Im Idealfall wäre es Super wenn mir jemand Screens von den Einstellungen unter dem Reiter "Script" anfertigen kann oder halt ne Schrtt für Schritt Anleitung
VG `
Hallo MadM4x,
hier mal mein Script für den Aufruf des Shutdown-Scripts aus ioBroker heraus. Ich mache das ganze über ein separates Objekt. Aktuell wird das Objekt nach Zeit auf "true" gesetzt um den ioBroker vor dem Backup zu beenden. Mein Ziel ist es das Ganze über einen Simple-API-Aufruf aus dem Backupscript heraus zu initiieren. Das habe ich bisher aber nicht implementiert und getestet.
// Script zum Stoppen von ioBroker für das wöchentliche Backup durch die Synology Disk Station (Aufgabenplaner!) createState('javascript.0.wartung.shutdown_trigger', false, {name: 'Trigger zum Stoppen von ioBroker für wöchentliches Backup durch die Synology Disk Station'}); setState('javascript.0.wartung.shutdown_trigger', false); on ({ id: "javascript.0.wartung.shutdown_trigger", change: 'ne', val: true }, function(){ log ("--> ioBroker wird gestoppt."); setState('javascript.0.wartung.shutdown_trigger', false); exec('/opt/scripts/iobroker_stop.sh', function(err, stdout, stderr) { if (err) { log(stderr,'error'); return; } }); });
Zur Zeit sieht mein Zeit gesteuerter Aufruf dann so aus:
// Setzen des Shutdown-Triggers für wöchentliches Backup durch die Synology Disk Station montags, 2:00 Uhr schedule("0 2 * * 1", function () { setState('javascript.0.wartung.shutdown_trigger', true); });
Hoffe du kannst damit etwas anfangen.
MfG,
André
-
Hallo,
Ich hatte versucht das Docker Image laufen zu lassen.
Wenn ich die Laufwerke der Synology nicht mounte geht es. Mounte ich die, fährt er nicht hoch.
Desweiteren würde ich gerne eine fertige Konfiguration vom RasPi in den Docker nehmen. Über Backup und Restore geht es nicht. `
Hallo Matze,
kennst du meine Anleitung?
https://buanet.de/2017/09/iobroker-unte … skstation/
Falls ja, hast du es Schritt für Schritt so gemacht? Dann sollte es laufen… Falls es danach nicht läuft, beschreibe bitte mal genau wo es klemmt...
MfG,
André
-
Hallo Andre,
Ich habe versucht mich an deine Anleitung zu halten.
Vll trotzdem was falsch gemacht.
Ich habe das Backup vom Pi per ssh über meinen mac auf die Diskstation geschoben.
Dort habe ich es in dem Verzeichnis was suf /opt/iobroker gemappt ist entpackt.
Dann läuft es schon nicht mehr.
Nehm ich das mapping raus, läuft seine VM ganz normal. Habe aber soviel auf dem Pi schon eingestellt, dass ich mir eine neu konfig sparen mag.
-
Hoffe du kannst damit etwas anfangen.
MfG,
André `
Janein
Mir gings Hauptsächlich darum wie ich das unter ioBroker bewerkstellige.
Hab es mir aber gerade nochmal angeschaut und Frage sicherheitshalber noch einmal im Detail nach:
unter ioBroker oben auf Script klicken?
neues Script anlegen?
Javascript anlegen?
dort dann den Inhalt von dir hier übernehmen?
und rechts auf Cron klicken und die "Zeitsteuerung" übernehmen?
speichern, fertig ?!?
VG
-
Hmmm keiner unter Euch der mir erklären kann wo und wie genau ich das automatische Beenden von ioBroker
als neues Objekt anlegen kann?
Also nach der von André beschrieben Methode?
-
Hallo Andre,
Ich habe versucht mich an deine Anleitung zu halten.
Vll trotzdem was falsch gemacht.
Ich habe das Backup vom Pi per ssh über meinen mac auf die Diskstation geschoben.
Dort habe ich es in dem Verzeichnis was suf /opt/iobroker gemappt ist entpackt.
Dann läuft es schon nicht mehr.
Nehm ich das mapping raus, läuft seine VM ganz normal. Habe aber soviel auf dem Pi schon eingestellt, dass ich mir eine neu konfig sparen mag. `
Hallo,
hast du an die Anpassung des Hostnamens gedacht? (Schritt 3/ Seite 4)
Gibt es Fehlermeldungen? Protokoll vom Container?
Startet der Container gar nicht, oder nur ioBroker nicht?
MfG,
André
-
Janein
Mir gings Hauptsächlich darum wie ich das unter ioBroker bewerkstellige.
Hab es mir aber gerade nochmal angeschaut und Frage sicherheitshalber noch einmal im Detail nach:
unter ioBroker oben auf Script klicken?
neues Script anlegen?
Javascript anlegen?
dort dann den Inhalt von dir hier übernehmen?
und rechts auf Cron klicken und die "Zeitsteuerung" übernehmen?
speichern, fertig ?!?
VG `
Nicht ganz.
Der erste Code ist ein fertiges Javascript. Einfach anlegen und speichern.
Der zweite Auszug sind Codezeilen die ich in einem zweiten Java-Script habe (Habe ein separates Script für Zeit gesteuerte Ereignisse). Prinzipiell könntest du die zweiten Codezeilen mit in das erste Script kopieren. Oder du machst wie ich ein separates Script. Dieses zweite Script hat schon einen Zeitplaner eingebaut:
schedule("0 2 * * 1"...
Dabei bedeutet "0 2 * * 1" > Minute 0 in Stunde 2 an jedem () Tag eines jeden () Monats am Wochentag 1 der Woche
Das zweite Script macht übrigens nichts anderes, als eine Variable (javascript.0.wartung.shutdown_trigger) auf true zu setzen um das erste Script zu triggern.
MfG, André
-
Hallo,
also ich hatte alles noch mal gemacht.
Habe auf dem Pi den iobroker gestoppt und diesesmal den ganzen Ordner kopiert. Dann in der Synology eingefügt und gemountet.
- date stream content
2017-11-19 09:21:32 stdout No connection to states 127.0.0.1:6379[redis] 2017-11-19 09:20:49 stdout root@DS-S-Heim:/opt/iobroker# iobrokio[K[Ker host this 2017-11-19 09:19:15 stdout iobroker controller daemon started. PID: 100 2017-11-19 09:19:11 stdout Starting iobroker controller daemon… 2017-11-19 09:19:10 stdout root@DS-S-Heim:/opt/iobroker# iobroker start 2017-11-19 09:19:00 stdout No connection to states 127.0.0.1:6379[redis] 2017-11-19 09:18:54 stdout root@DS-S-Heim:/opt/iobroker# iobroker host this 2017-11-19 09:18:39 stdout @eaDir ftpUpload.sh iobroker killall.sh node_modules reinstall.sh 2017-11-19 09:18:38 stdout backups etc install.sh iobroker-data log package.json 2017-11-19 09:18:38 stdout root@DS-S-Heim:/opt/iobroker# ls 2017-11-19 09:18:37 stdout root@DS-S-Heim:/opt# cd iobroker/ 2017-11-19 09:18:33 stdout iobroker scripts 2017-11-19 09:18:33 stdout root@DS-S-Heim:/opt# ls 2017-11-19 09:18:32 stdout root@DS-S-Heim:/# cd opt 2017-11-19 09:18:27 stdout bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var 2017-11-19 09:18:27 stdout root@DS-S-Heim:/# ls 2017-11-19 09:17:56 stdout No connection to states 127.0.0.1:6379[redis] 2017-11-19 09:17:50 stdout root@DS-S-Heim:/# iobroker hst [K[K[Kost thos[K[Kis 2017-11-19 09:17:40 stdout iobroker controller daemon is not running 2017-11-19 09:17:38 stdout root@DS-S-Heim:/# [Kroot@DS-S-Heim:/# iobroker stop 2017-11-19 09:16:02 stdout iobroker controller daemon already running. PID: 66 2017-11-19 09:15:54 stdout [….] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h. 2017-11-19 09:15:49 stdout [….] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h. 2017-11-19 09:15:47 stdout rm: das Entfernen von '/var/run/dbus/pid' ist nicht möglich: Datei oder Verzeichnis nicht gefunden
Ich sehe das der admin startet und alle module die im alten Broker waren… aber ich komme nicht auf das interface..... wie du siehst geht der hosts this auch nicht richtig.
2486_bildschirmfoto_2017-11-19_um_10.26.37.png -
Hallo,
also ich hatte alles noch mal gemacht.
Habe auf dem Pi den iobroker gestoppt und diesesmal den ganzen Ordner kopiert. Dann in der Synology eingefügt und gemountet.
- date stream content
2017-11-19 09:21:32 stdout No connection to states 127.0.0.1:6379[redis] 2017-11-19 09:20:49 stdout root@DS-S-Heim:/opt/iobroker# iobrokio[K[Ker host this 2017-11-19 09:19:15 stdout iobroker controller daemon started. PID: 100 2017-11-19 09:19:11 stdout Starting iobroker controller daemon… 2017-11-19 09:19:10 stdout root@DS-S-Heim:/opt/iobroker# iobroker start 2017-11-19 09:19:00 stdout No connection to states 127.0.0.1:6379[redis] 2017-11-19 09:18:54 stdout root@DS-S-Heim:/opt/iobroker# iobroker host this 2017-11-19 09:18:39 stdout @eaDir ftpUpload.sh iobroker killall.sh node_modules reinstall.sh 2017-11-19 09:18:38 stdout backups etc install.sh iobroker-data log package.json 2017-11-19 09:18:38 stdout root@DS-S-Heim:/opt/iobroker# ls 2017-11-19 09:18:37 stdout root@DS-S-Heim:/opt# cd iobroker/ 2017-11-19 09:18:33 stdout iobroker scripts 2017-11-19 09:18:33 stdout root@DS-S-Heim:/opt# ls 2017-11-19 09:18:32 stdout root@DS-S-Heim:/# cd opt 2017-11-19 09:18:27 stdout bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var 2017-11-19 09:18:27 stdout root@DS-S-Heim:/# ls 2017-11-19 09:17:56 stdout No connection to states 127.0.0.1:6379[redis] 2017-11-19 09:17:50 stdout root@DS-S-Heim:/# iobroker hst [K[K[Kost thos[K[Kis 2017-11-19 09:17:40 stdout iobroker controller daemon is not running 2017-11-19 09:17:38 stdout root@DS-S-Heim:/# [Kroot@DS-S-Heim:/# iobroker stop 2017-11-19 09:16:02 stdout iobroker controller daemon already running. PID: 66 2017-11-19 09:15:54 stdout [….] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h. 2017-11-19 09:15:49 stdout [….] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h. 2017-11-19 09:15:47 stdout rm: das Entfernen von '/var/run/dbus/pid' ist nicht möglich: Datei oder Verzeichnis nicht gefunden
Ich sehe das der admin startet und alle module die im alten Broker waren… aber ich komme nicht auf das interface..... wie du siehst geht der hosts this auch nicht richtig. `
Kann es sein dass dein iobroker auf dem pi mit redis als states db lief?
Laut log ist der Fehler doch eindeutig…
"2017-11-19 09:19:00 stdout No connection to states 127.0.0.1:6379[redis]"
Entweder du machst ein "iobroker setup custom" und stellst zurück auf File als states db oder du installierst auf der DS das redis Paket (so habe ich es).
Alternativ könnte man redis auch im Container installieren.
Für iobroker host this muss iobroker, glaube ich, gestoppt sein…
MfG,
André
Gesendet von meinem D5803 mit Tapatalk
-
Hallo,
Danke für die Hilfe.
Macht es dann nicht mehr Sinn die Redis DB im Container fest zu installieren?
Beim PI habe ich dahin gehend nichts geändert.
-
Hallo,
Danke für die Hilfe.
Macht es dann nicht mehr Sinn die Redis DB im Container fest zu installieren?
Beim PI habe ich dahin gehend nichts geändert. ` Nein.
Wenn man den Container (das Image) dann nach meiner Anleitung aktualisiert müsste man redis immer manuell neu installieren. Ich werde es nicht von vornherein mit integrieren. Es gibt ja die Möglichkeiten redis als eigenen Container oder als DS Paket zu installieren. Das sollte reichen.
Eine Anleitung dazu steht noch auf meiner ToDo-Liste.
MfG,
André
Gesendet von meinem D5803 mit Tapatalk
-
Ok,
Es reicht also auf der DS das Paket oder einen Cotainer mit redis zu installieren?
Wie erkennen sich dann die Anwendung?