NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
Hi Andrè,
ich bin nicht sicher ob ich hier einen Bug gefunden habe oder es irgendwie an meinem Set Up liegt, aber die Aktualisierung des Host scheint nicht zu funktionieren.
Ich muss nach jedem Neustart des Containers den Broker anhalten, mitiobroker host set xxxx
den Host neu setzen und mit dem von Dir zur Verfügung gestelltengosu
Befehl den Broker neu starten.Edit: Oh, es scheint übrigens auch so zu sein, dass er den Container jedesmal als Erststart durchführt, da er jedesmal nano neuinstalliert. (Ver 5.0.0.)
-
Hallo zusammen,
Natürlich möchte ich mich als erstes für die Zeit und Arbeit bedanken, die sich der Ersteller und die Helfenden Hände hier machen.
Ich habe mich für die Variante mit Macvlan entschieden (da ich mit Docker-Container Wiederherstellung leider schlechte Erfahrungen gemacht habe).
Dabei bin ich keinesfalls ein erfahrener User... Aber ich habe mich jetzt eine Woche durchgebissen und war mehrfach kurz davor einfach einen Raspi zu bestellen...
Aber nun zu meinem Problem. Ich habe alle Einträge hier überflogen aber konnte keinen Eintrag dazu finden:
Wenn ich Adapter herunterladen möchte kommt folgende Fehlermeldung:
(Iobroker über eigene Adresse im Browser erreichbar)$ ./iobroker add ical --host Iobroker_V1 NPM version: 6.14.6 npm install iobroker.ical@1.7.4 --loglevel error --prefix "/opt/iobroker" (System call) npm ERR! code ECONNREFUSEDnpm ERR! errno ECONNREFUSED npm ERR! FetchError: request to https://registry.npmjs.org/iobroker.ical failed, reason: connect ECONNREFUSED 104.16.26.35:443npm ERR! at ClientRequest.<anonymous> (/usr/lib/node_modules/npm/node_modules/node-fetch-npm/src/index.js:68:14)npm ERR! at ClientRequest.emit (events.js:315:20)npm ERR! at TLSSocket.socketErrorListener (_http_client.js:426:9)npm ERR! at TLSSocket.emit (events.js:315:20)npm ERR! at emitErrorNT (internal/streams/destroy.js:92:8)npm ERR! at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)npm ERR! at processTicksAndRejections (internal/process/task_queues.js:84:21)npm ERR! FetchError: request to https://registry.npmjs.org/iobroker.ical failed, reason: connect ECONNREFUSED 104.16.26.35:443npm ERR! at ClientRequest.<anonymous> (/usr/lib/node_modules/npm/node_modules/node-fetch-npm/src/index.js:68:14)npm ERR! at ClientRequest.emit (events.js:315:20)npm ERR! at TLSSocket.socketErrorListener (_http_client.js:426:9)npm ERR! at TLSSocket.emit (events.js:315:20) npm ERR! at emitErrorNT (internal/streams/destroy.js:92:8)npm ERR! at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)npm ERR! at processTicksAndRejections (internal/process/task_queues.js:84:21) {npm ERR! type: 'system',npm ERR! errno: 'ECONNREFUSED',npm ERR! code: 'ECONNREFUSED'npm ERR! }npm ERR! npm ERR! If you are behind a proxy, please make sure that thenpm ERR! 'proxy' config is set properly. See: 'npm help config' npm ERR! A complete log of this run can be found in:npm ERR! /opt/iobroker/.npm/_logs/2020-09-06T17_05_42_499Z-debug.log ERROR: host.Iobroker_V1 Cannot install iobroker.ical@1.7.4: 1 ERROR: process exited with code 25
Modem Fritzbox mit Standard IPs
DS918 (nur ein Ethernetanschluss belegt)
Docker aktuell
Container iobroker verbunden mit Bridge und Macvlan "iobroker_V1"iobroker:
Platform: linux
os: linux
Architecture: x64
CPUs: 4
Speed: 1501 MHz
Model: Intel(R) Celeron(R) CPU J3455 @ 1.50GHz
RAM: 7.6 GB
System uptime: 52 T. 23:09:04
Node.js: v12.18.3
NPM: 6.14.6
Disk size: 3.5 TiB
Disk free: 2.3 TiB
adapters count: 303
Uptime: 01:08:41
Active instances: 3Hoffe das reicht als Info, ansonsten bitte fragen.
Bei npm rebuild kommt folgende Meldung:
Gruß Notsches
-
@Notsches Das sieht für mich so aus als ob dein IO-Broker Container nicht ins Internet kommt. Ping doch mal im Terminal des Containers eine Adresse im Internet an, z.b. heise.de das sollte problemlos funktionieren. Wenn nicht (wovon ich ausgehe) gibt es wahrscheinlich ein Problem mit deiner MACVLAN konfiguration.
Du kannst den IOBroker Container aber über die IP-Adresse die als MacVLAN konfiguriert ist erreichen oder?
Poste doch am besten mal einen Screenshot von deiner MACVLAN Konfig in Portainer, dann kommen wir der sache schon auf die Spur.gruß,
Frank -
Hi Frank,
iobroker hat die IP100 wie gewünscht und ich komme per Browser drauf.
Den Router kann ich anpingen und bekomme sofort Rückmeldung.
Habe noch nie eine Webadresse angepingt, weiss nicht ob es richtig war, aber das hier wird angezeigt:
Die Netwerkeinstellungen sind wie folgt:
Danke schonmal
-
@Notsches Der Ping war richtig, aber das Ergebnis erstaunt mich. Das sieht für mich so aus als ob dein Router den Ping blocken würde. Kann es sein das du für die IP Adresse des Routers den Internetzugriff gesperrt hast im Router?
Aufgrund des Adressbereichs 192.168.178.xxx tippe ich auf ne Fritzbox. Check doch mal unter Internet / Filter / Kindersicherung ob die IP des IoBrokers ins Internet darf.
Evtl. hast du die Zugangsprofile so verändert das neue Geräte Standardmässig nicht ins Internet dürfen?Gruß,
Frank -
@hetti72
Bei der Fritzbox kenne ich mich sogar etwas aus. Dort war Standard ausgewählt und auch auf unbeschränkt ändert sich nichts.
iobroker Info gibt folgenden Fehler im LOG aus :Gruß
Notsches -
@Notsches
Hier noch die Docker Netzwerkübersicht:
-
@Amnesia1211 Es gibt keine doofen Fragen und ja, es gibt was zu beachten.
Wie in der readme auf Github eigentlich auch beschrieben sein sollte wechselt fast immer bei einer neuen Major Version (4.x.x oder 5.x.x) auch immer die Node Version. Das bedeutet, dass die ioBroker Installation auch für die neue Version "fit gemacht" werden muss. Hat man den js-controller bereits in Version 3+, dann sollte der ioBroker das (zumindest größtenteils) automatisch bewerkstelligen. Bei kleineren Versionen oder Problemen kann man ein "npm rebuild" im ioBroker-Verzeichnis ausführen, dann wird die ioBroker installation "neu gebaut"....Lange Rede kurzer Sinn: Das ist mir alles zu umständlich und hat mich in der Vergangenheit immer wieder Nerven gekostet...
Meine Empfehlung (auch weil bisher nur gute Erfahrungen gemacht): Beim Major Version Update über Backup und Restore gehen. Siehe dazu auch meine Best Practices in der readme auf Github.
@Amnesia1211 sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
bzw. wird es eine neue Anleitung geben[...] ?
Nein. Die Anleitung ist so wie sie ist auch weiterhin gültig.
MfG,
André -
@onkel-ede Wie @Glasfaser gesagt hat. Lege einen neuen Container an und gehe über Backup und Restore. Siehe dazu auch mein Post über diesem.
MfG,
André -
@K1ngLear Wie würde King Julien es ausdrücken: "Iche nixe könne sagen ohne die wundervolle Log!"
@K1ngLear sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Edit: Oh, es scheint übrigens auch so zu sein, dass er den Container jedesmal als Erststart durchführt, da er jedesmal nano neuinstalliert. (Ver 5.0.0.)
Sorry, das ist nur quick and dirty gescriptet und sagt nix aus... Ich mache keine Überprüfung. Heißt das Script versucht bei jedem Start die fehlenden Packages zu installieren und geht einfach darüber hinweg wenn schon installiert... Wenn mir mal langweilig sein sollte mache ich das auch noch hübsch
Poste mal dein Log, dann kann ich schauen ob du das was gefunden hast...
MfG,
André -
@Notsches So wie es ausschaut ist da irgendwo eine Firewall im Weg. Hast du sowas im Einsatz/ aktiviert? Vielleicht die Firewall der DS (Systemsteuerung > Sicherheit > Firewall)?
MfG,
André -
@andre
Ist ausGruß
Notsches -
@Notsches Jetzt gehen mir hier in der Ferndiagnose leider die Ideen aus. Wie gesagt bekommt der Container wohl nicht ins Internet, daher die ganzen ECONNREFUSED Meldungen. Ich tippe immer noch auf ein Problem mit dem Router, aber eigentlich hast du schon alles ausgeschlossen.
Ich würde nochmal ein neues MACVLAN anlegen aber diesmal mit einer anderen IP Range und einer anderen Subnetmaske. z.B. 192.168.178.88 mit einer 30er Maske. Dann hast du in deinem MACVLAN 4 Adressen (.88 bis .92) zu verfügung und könntest mit anderen Containern testen.
Was mich vor allem aber wundert ist das dein Router den Ping nach heise.de zu blocken scheint. Kannst du von einem anderen Gerät mal einen Ping nach heise.de versuchen?
gruß,
Frank -
@hetti72
Vom Macbook aus ist das anpingen von heise kein Problem.
Ich werd morgen früh das Netzwerk nochmal anlegen und dann schauen.Danke und Gruß
Notsches -
@hetti72
So, ich habe erstmal Ordnung in meine "IP" Struktur gebracht und Gruppen gebildet, so dass ich sicher kein, dass sich nichts überschneiden kann.Nun habe ich also die 80 gewählt (bis 100 auf jeden Fall frei). Config und Netzwerk selbst konnte ich erstellen. Will ich den Container startet kommt folgende Meldung:
Habe ich nun das Problem, dass die anderen Netzwerke (die ich nicht mehr löschen kann, Fehlermeldung "in use") das Erstellen des Containers blockieren?
Gruß
Notsches -
Puuh, das werden ja immer mehr probleme anstatt weniger.
@Notsches sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Habe ich nun das Problem, dass die anderen Netzwerke (die ich nicht mehr löschen kann, Fehlermeldung "in use") das Erstellen des Containers blockieren?
Was meinst du denn mit andere netzwerke? das "alte" MACVLAN ? So lange ein Container das MACVLAN benutzt kannst du es nicht löschen, aber das ist ja eigentlich nur ein click in Portainer. Stopp den Container der es benutzt und lösch das Netzwerk in den Network settings.
Die Fehlermeldung die du bekommst wenn du einen Container mit dem neuen MACVLAN starten willst kenne ich so nicht, aber ich könnte mir vorstellen das man nur ein MACVLAN pro physikalischer Schnittstelle haben darf, bin mir aber nicht sicher.
Versuch doch erstmal den alten container und das alte macvlan zu löschen und erzeuge dann einen neuen container mit dem neuen macvlan.gruß,
Frank -
@hetti72
Das ist ja das witzige, ich habe nur einen Container, der Portainer und der nutzt nur die Bridge...
Die Netzwerke werden im Docker auch nicht mehr angezeigt, nur in Portainer.Ich werde es weiter versuchen und google zu Hilfe nehmen.
-
Ich habe Docker deinstalliert (inkl. komplettes Löschen der zugehörigen Dateien) und habe dann Docker neu installiert. Nach der Installation von Portainer und Iobroker hat nun alles funktioniert.
Danke Frank und Danke Andre für eure Hilfeversuche :-). Manchmal hilft nur der Hammer
Gruß
Notsches -
Ich bereite mich auch gerade auf ein upgrade des Iobroker Containers vor. Dazu habe ich mir erst einmal den Adapter Backitup installiert (weil es so im "best practice" steht). Zuvor habe ich meine Backups immer durch das Backup-Skript im Aufgabenplaner der DS erstellen lassen. Nun wundere ich mich das das Backup des Adapters ~2,5MB und das des Skriptes ~600MB groß ist. Kann mir das jemand erklären? Ist das normal?
Danke und Grüße,
Joscha -
@jogge Backitup sichert nur die Einstellungen des ioBroker, das Skript vermutlich die komplette Installation.