NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
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?
-
sooo…
also als Paket ging es nicht zu installieren.. Das Paket hat nicht gesartet.
Als Container aber schon eher... hier ist im Prozess schon mal zu erkennen das die einzelnen Adapter starten....
Aber ein
Iobroker stop
um````
iobroker host thisEDIT: Nach langem warten konnte ich iobroker host this ausführen und ioborker starten... Alles sehr langsam.... Aktuell startet das interface auf 8081 nicht... man sieht nur kurz das Rad und dann ist wieder alles weiss.
-
in anderem Thread" url="http://forum.iobroker.net/viewtopic.php?f=20&t=5371&p=54397#p54397">
@Superdad [url=http://forum.iobroker.net/viewtopic.php?f=20&t=5371&p=54397#p54397:~~in anderem Thread"]~~Hallo,
im Synology unter Systemsteuerung - Aufgabenplaner folgendes anlegen:
Erstellen - geplante Aufgabe - benutzerdefiniertes Script:
Allgemein - bei Vorgang z.Bsp.: ioBroker starten
Benutzer: root
dann Aufgabeneinstellungen - benutzerdefiniertes Script:
dort eintragen:
cd /volume2/homes/admin/opt/iobroker
./iobroker start
eintragen.
Wenn dein ioBroker in einem anderen Verzeichnis liegt, dann musst du das natürlich anpassen.
Unter Aufgabeneinstellung kannst du dir auch noch eine Bestätigungsmail schicken lassen.
Für ioBroker stoppen folgendes eintagen:
Zweites Script anlegen wie oben:
dann eintragen:
cd /volume2/homes/admin/opt/iobroker
./iobroker stop
dann kannst du auch mal per Hand stoppen und starten.
Gruss `
Hallo, ich stehe vor dem gleichen Problem.
Das Script funktioniert nur nicht, weil ich anscheinend keine Home-Verzeichnisse habe.
Keine Ahnung warum.
Wo läuft denn jetzt der ioBroker?
geändert: Thread zusammengeführt und Quote wegen Sinnzusammenhang eingefügt; Homoran (Mod)
-
Wo läuft denn jetzt der ioBroker? `
Sorry habe keine Antwort zu dieser Frage würde aber empfehlen anstatt direkt auf dem NAS ioBroker in einem docker laufen zu lassen damit trennst du auch dein NAS System und processen von ioBroker was am Ende die bessere Lösung ist.
Greetz
Dutch
–-----------------------
Send from mobile device
-
Äh ja läuft ja im Docker…
ich war davon ausgegangen dass das hier im Threat auch so ist.
:oops:
-
Man sollte keinen Thread kapern!
Es gibt auch einen Docker thread.
Gruß
Rainer
-
Jaja, nu ist aber gut!
Da sucht man nach Lösungen bevor man eine Frage stellt und wieder von den allwissenden "BENUTZER GOOGLE-Usern" angemotzt wird und dann ist es auch wieder nicht richtig.
Also danke für diesen überflüssigen Hinweis!
Es tut mir unfassbar Leid dass ich zu dämlich für dieses Forum bin.
BTW…
ich hab ne Synology und ich habe ioBroker drauf laufen.
So abwegig war dieser Threat ja wohl nicht oder?
-
Verzeihung werter Herr (??).
dass ich zu dämlich für dieses Forum bin. `
so war das wirklich nicht gemeint!Da sucht man nach Lösungen bevor man eine Frage stellt `
das ist ja auch gut so.von den allwissenden "BENUTZER GOOGLE-Usern" angemotzt wird `
:?: :?:Ich suche doch gerade den Docker thread um dich dahin zu verschieben
Aber eine Frage habe ich noch zuvor:
Welches Docker-Image benutzst du?
Gruß
Rainer
-
…ich bin so angefressen weil ich extra nach einer Problemlösung gesucht habe, bevor ich einen Threat dafür eröffne.
Weil genau das die typischen Besserwisser auf den Plan ruft, die alles können, vor allem hervorragend googeln.
So, Blutdruck ist wieder runter...
Also.
Welches Image ich verwende kann ich ehrlich gesagt nicht so genau ermitteln. Irgendwie finde ich keine Versionsinformationen außer:
buanet/iobroker:latest.
Ist das dann tatsächlich die letzte Version?
Mittlerweile gefunden habe ich diesen:
http://forum.iobroker.net/viewtopic.php ... lit=Docker
und
https://buanet.de/2017/09/iobroker-unte ... skstation/
Das werde ich jetzt nochmal durcharbeiten und dann sehen wir weiter.
Gruß Carsten