NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
@Holzlenkrad Da stimme ich dir zu. Bloß nicht zu viel auf einmal ändern.
Ich habe gestern auch alles auf einmal gemacht. Habe mein Livesystem von der DS (musste ein paar Ressourcen frei machen) auf eine Debian VM mit Docker unter Hyper-V auf einem Win 10 Intel Nuc umgezogen und bin gleichzeitig auf das neue Beta Image gewechselt...
Mit umgezogen sind natürlich auch die weiteren Container mit redis, mariadb, influxdb und grafana. Zum Glück alles ohne größere Probleme.
Jetzt hab ich endlich produktiv mal mit "Stack" im Portainer gearbeitet. Das schreit irgendwie nach nem neuen Tutorial...In diesem Zusammenhang kann ich jetzt übrigens endlich auch bestätigen, dass der Restore vom "iobroker backup" (nur Backup file im iobroker Ordner, beim Start des Containers) auch bei umfangreichen Installationen problemlos funktioniert. Allerdings hat es ca. 1,5 Stunden gedauert, bis iobroker meine 51 Adapter nachinstalliert hatte...
Zeitaufwand für den kompletten Umzug ca. 4 Stunden (inklusive Einrichtung eines neuen Backup Scripts).MfG,
André -
@andre said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Das mit dem Modul im Javascript ist interessant. Hast du da mal nen Screenshot? Installiert er darüber dann npm Module nach?
So wie ich das verstehe installiert er dadrüber dann die eingetragenen NPM-Module nach, ja
Bezüglich der Karte vom RoboRock-S5-Staubsauger (mit Valetudo) funktioniert das bei mir.
Ich hatte das aus mehreren Quellen zusammen getragen.
Zum einen hier im Video
Zum Anderen hier bei Github (ich nutze den V3-Script)Hier steht auch beschrieben, dass der Script eigentlich gar nicht mehr nötig ist und die Live-Map direkt über den Adapter konfiguriert werden kann.
Ist auch ziemlich verwirrend, weil die Repo einmal über iobroker-community-adapters (scheint die "offizielle" zu sein) und einmal über MeisterTR läuft.Über den Mihome-Adapter soll das HTML-Bild in mihome-vacuum.0.map.map64 liegen, dieses Objekt bleibt bei mir allerdings leer (der Rest des Adapters funktioniert einwandfrei).
Über den JS-Script landet das HTML-Bild in javascript.0.vis.RockroboMap - das funktioniert bei mir sehr gut - auch wenn es ärgerlich ist, weil ein "unnötiger" Script läuft.Vielleicht liegt das einfach daran, dass "canvas" und "xmlhttprequest" im javascript als NPM-Modul nachinstallieren lassen kann, im Mihome-Adapter aber nicht (bzw. dieses anderweitig erledigen müsste?)
Ich wüsste nicht, wie ich das anderweitig im Container löse. -
@Holzlenkrad said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
sodass das Interface nicht erreichbar war. Lösung und Beschreibung hier: https://forums.docker.com/t/docker-container-not-reachable-from-the-outside-only-after-ping-from-the-inside-macvlan/89629
woah...ernsthaft - DANKE!
Ich habe schon an meinem Verstand gezweifelt, weil ich das macvlan nicht zum laufen bekam (exakt das gleiche Verhalten -> alles funktionierte erst nach einem Ping von innen heraus).
Ich habe es dann aufgegeben und im Bridge-Mode alle Ports durch geroutet.Im Host-Modus startet der Container bei mir zwar erfolgreich, aber der Admin-Adapter bricht seinen Dienst direkt wieder ab, was ich mir auch überhaupt nicht erklären kann.
Über die Log des Containers erhalte ich folgende Fehler:================================== > LOG REDIRECT system.adapter.admin.0 => true [starting], ================================== > LOG REDIRECT system.adapter.admin.0 => false [Process stopped], ================================== > LOG REDIRECT system.adapter.admin.0 => false [system.adapter.admin.0.logging],
Das hatte ich hier schon mal angefragt - war vermutlich die falsche Anlaufstelle.
Im Bridgemode mit entsprechenden Ports funktioniert soweit alles. (Komplett identische Container-Einstellungen wie im Host-Mode, nur der Netzwermodus wurde von Host auf Brige geändert und die paar Ports durchgeroutet)
-
Kann man das BT im Adapter deaktivieren?
Da ich im Moment kein Device dran habe und er im Log meckert und nicht startet
host.iobroker 2020-04-12 12:39:48.678 info Do not restart adapter system.adapter.radar2.0 because disabled or deleted host.iobroker 2020-04-12 12:39:48.678 error instance system.adapter.radar2.0 terminated with code 3 (NO_ADAPTER_CONFIG_FOUND) radar2.0 2020-04-12 12:39:48.169 warn (9677) Terminated (NO_ADAPTER_CONFIG_FOUND): Without reason radar2.0 2020-04-12 12:39:48.165 error (9677) adapter disabled host.iobroker 2020-04-12 12:39:46.739 info "system.adapter.radar2.0" disabled host.iobroker 2020-04-12 12:39:46.739 info "system.adapter.radar2.0" disabled host.iobroker 2020-04-12 12:39:46.739 info "system.adapter.radar2.0" disabled host.iobroker 2020-04-12 12:39:46.739 info "system.adapter.radar2.0" disabled host.iobroker 2020-04-12 12:39:46.739 info "system.adapter.radar2.0" disabled host.iobroker 2020-04-12 12:39:46.739 info "system.adapter.radar2.0" disabled host.iobroker 2020-04-12 12:39:46.739 info "system.adapter.radar2.0" disabled host.iobroker 2020-04-12 12:39:46.127 info Restart adapter system.adapter.radar2.0 because enabled host.iobroker 2020-04-12 12:39:46.127 info instance system.adapter.radar2.0 terminated with code 0 (NO_ERROR) host.iobroker 2020-04-12 12:39:46.127 error Caught by controller[0]: at process._tickCallback (internal/process/next_tick.js:61:11) errno: 19, code: 'ENODEV', syscall: 'bind' } host.iobroker 2020-04-12 12:39:46.127 error Caught by controller[0]: at process.nextTick (/opt/iobroker/node_modules/@abandonware/noble/lib/noble.js:60:24) host.iobroker 2020-04-12 12:39:46.127 error Caught by controller[0]: at NobleBindings.init (/opt/iobroker/node_modules/@abandonware/noble/lib/hci-socket/bindings.js:78:13) host.iobroker 2020-04-12 12:39:46.127 error Caught by controller[0]: at Hci.init (/opt/iobroker/node_modules/@abandonware/noble/lib/hci-socket/hci.js:100:35) host.iobroker 2020-04-12 12:39:46.127 error Caught by controller[0]: { Error: ENODEV, No such device radar2.0 2020-04-12 12:39:46.102 info (9655) Adapter disconnected and stopped with dostop(false) and callback(true) radar2.0 2020-04-12 12:39:46.102 error (9655) Error: ENODEV, No such device at Hci.init (/opt/iobroker/node_modules/@abandonware/noble/lib/hci-socket/hci.js:100:35) at NobleBindings.init (/opt/iobroker/node_modules/@abandonware/nob radar2.0 2020-04-12 12:39:46.101 error (9655) uncaught exception: ENODEV, No such device radar2.0 2020-04-12 12:39:46.096 info (9655) radar2 set to scan every 20 seconds and printers every 720 minutes. radar2.0 2020-04-12 12:39:46.096 info (9655) arp-scan will use the following interfaces: [ 'enp1s0' ] radar2.0 2020-04-12 12:39:46.096 info (9655) Remove name end for host names: .fritz.box radar2.0 2020-04-12 12:39:46.095 info (9655) use known IP list: [ '1.1.1.1' ] radar2.0 2020-04-12 12:39:46.095 info (9655) use known BT list: [ '01:12:23:34:45:56' ] radar2.0 2020-04-12 12:39:46.095 info (9655) radar2 set to flag items away if they are not seen for 2 minutes radar2.0 2020-04-12 12:39:46.094 info (9655) found 'node-bluetooth' radar2.0 2020-04-12 12:39:46.092 info (9655) found '@abandonware/noble' radar2.0 2020-04-12 12:39:46.048 info (9655) Connected with '0.0.0.0' for DHCP Scan radar2.0 2020-04-12 12:39:46.000 info (9655) radar2 initialization started... radar2.0 2020-04-12 12:39:45.923 info (9655) starting. Version 1.0.9 in /opt/iobroker/node_modules/iobroker.radar2, node: v10.20.0
MFG Maggi
-
@FoodFighter said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@andre said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
irgendwo ist mir das doch die Tage schonmal über den Weg gelaufen
Das könnte ich gewesen sein (28.03.20) Hier ist der Beitrag .
Bei mir lag es daran, dass die benötigten Pakete über die ENV-Variable nicht installiert wurden, da die Installation durch das nicht vorhandene vi-Paket auf dem RaspPi abgebrochen wurde und mir das durch in der Log nicht aufgefallen ist.
Das hast Du ja mittlerweile freundlicherweise alles behoben
@ts020339
trage mal folgende Pakete in die ENV-PACKAGES-Variable ein:
build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-devDanach sollte es laufen.
Für die Karten-Darstellung dann evtl. noch "canvas" als zusätzliches Modul in der javascript-Adapter-Einstellungen eintragen@FoodFighter : Danke für den Hinweis! Habe die Pakete wie von Dir erwähnt eingetragen in die ENV Variable und diese sind auch installiert worden. Leider scheitert das Adapter-Upgrade (von 1.1.5 auf 2.0.7) weiterhin:
$ ./iobroker upgrade mihome-vacuum Update mihome-vacuum from @1.1.5 to @2.0.7 NPM version: 6.13.4 npm install iobroker.mihome-vacuum@2.0.7 --loglevel error --prefix "/opt/iobroker" (System call) gyp ERR! configure error gyp ERR! stack Error: write EPROTO 140440310937408:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../deps/openssl/openssl/ssl/record/ssl3_record.c:332:gyp ERR! stack gyp ERR! stack at WriteWrap.afterWrite [as oncomplete] (net.js:789:14)gyp ERR! System Linux 4.14.24-qnapgyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "--fallback-to-build" "--module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node" "--module_name=canvas" "--module_path=/opt/iobroker/node_modules/canvas/build/Release" "--napi_version=5" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v64"gyp ERR! cwd /opt/iobroker/node_modules/canvasgyp ERR! node -v v10.19.0gyp ERR! node-gyp -v v5.0.5gyp ERR! not ok node-pre-gyp ERR! build error node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node --module_name=canvas --module_path=/opt/iobroker/node_modules/canvas/build/Release --napi_version=5 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v64' (1)node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/opt/iobroker/node_modules/node-pre-gyp/lib/util/compile.js:83:29)node-pre-gyp ERR! stack at ChildProcess.emit (events.js:198:13)node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:982:16)node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)node-pre-gyp ERR! System Linux 4.14.24-qnap node-pre-gyp ERR! command "/usr/bin/node" "/opt/iobroker/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"node-pre-gyp ERR! cwd /opt/iobroker/node_modules/canvasnode-pre-gyp ERR! node -v v10.19.0node-pre-gyp ERR! node-pre-gyp -v v0.11.0node-pre-gyp ERR! not ok npm ERR! code ELIFECYCLEnpm ERR! errno 1npm ERR! canvas@2.6.1 install: `node-pre-gyp install --fallback-to-build`npm ERR! Exit status 1npm ERR! npm ERR! Failed at the canvas@2.6.1 install script.npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in:npm ERR! /opt/iobroker/.npm/_logs/2020-04-12T11_43_21_011Z-debug.log ERROR: host.ioBroker-Host Cannot install iobroker.mihome-vacuum@2.0.7: 1 ERROR: process exited with code 25
@andre : habe mal wie von Dir vorgeschlagen ein github issue erstellt (https://github.com/buanet/docker-iobroker/issues/91).
Danke Euch!
Tim -
@FoodFighter :
wenn ich wie von Dir vorgeschlagen das Modul "canvas" im javascript Adapter eintrage, bekomme ich im Übrigen folgende Fehlermeldung im Log (Achtung: umgekehrte zeitliche Reihenfolge):javascript.0 2020-04-12 14:11:41.034 error (28605) Cannot install canvas: 1 javascript.0 2020-04-12 14:11:41.024 error npm ERR! /opt/iobroker/.npm/_logs/2020-04-12T12_11_41_017Z-debug.log javascript.0 2020-04-12 14:11:41.024 error (28605) npm ERR! A complete log of this run can be found in: javascript.0 2020-04-12 14:11:41.023 error (28605) javascript.0 2020-04-12 14:11:41.007 error npm ERR! This is probably not a problem with npm. There is likely additional logging output above. javascript.0 2020-04-12 14:11:41.007 error npm ERR! Failed at the canvas@2.6.1 install script. javascript.0 2020-04-12 14:11:41.007 error npm ERR! javascript.0 2020-04-12 14:11:41.007 error npm ERR! Exit status 1 javascript.0 2020-04-12 14:11:41.007 error (28605) npm ERR! canvas@2.6.1 install: `node-pre-gyp install --fallback-to-build` javascript.0 2020-04-12 14:11:41.004 error npm ERR! errno 1 javascript.0 2020-04-12 14:11:41.004 error (28605) ERR! code ELIFECYCLE javascript.0 2020-04-12 14:11:41.003 error (28605) npm javascript.0 2020-04-12 14:11:40.781 info (28605) Failed to execute '/usr/bin/node /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modules/iobroker.javascript/node_mod javascript.0 2020-04-12 14:11:40.780 error (28605) not ok javascript.0 2020-04-12 14:11:40.780 error node-pre-gyp ERR! javascript.0 2020-04-12 14:11:40.780 error node-pre-gyp ERR! node-pre-gyp -v v0.11.0 javascript.0 2020-04-12 14:11:40.780 error node-pre-gyp ERR! node -v v10.19.0 javascript.0 2020-04-12 14:11:40.780 error (28605) cwd /opt/iobroker/node_modules/iobroker.javascript/node_modules/canvas javascript.0 2020-04-12 14:11:40.779 error node-pre-gyp ERR! javascript.0 2020-04-12 14:11:40.779 error node-pre-gyp ERR! command "/usr/bin/node" "/opt/iobroker/node_modules/iobroker.javascript/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build" javascript.0 2020-04-12 14:11:40.779 error (28605) System Linux 4.14.24-qnap javascript.0 2020-04-12 14:11:40.779 error (28605) node-pre-gyp ERR! javascript.0 2020-04-12 14:11:40.778 error node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5) javascript.0 2020-04-12 14:11:40.778 error node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:982:16) javascript.0 2020-04-12 14:11:40.778 error node-pre-gyp ERR! stack at ChildProcess.emit (events.js:198:13) javascript.0 2020-04-12 14:11:40.778 error (28605) ERR! stack at ChildProcess.<anonymous> (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-pre-gyp/lib/util/compile.js:83:29) javascript.0 2020-04-12 14:11:40.778 error node-pre-gyp javascript.0 2020-04-12 14:11:40.778 error node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modules/iobrok javascript.0 2020-04-12 14:11:40.778 error (28605) ERR! build error javascript.0 2020-04-12 14:11:40.777 error (28605) node-pre-gyp javascript.0 2020-04-12 14:11:40.773 error (28605) javascript.0 2020-04-12 14:11:40.772 error gyp ERR! not ok javascript.0 2020-04-12 14:11:40.772 error gyp ERR! node-gyp -v v5.0.5 javascript.0 2020-04-12 14:11:40.772 error gyp ERR! node -v v10.19.0 javascript.0 2020-04-12 14:11:40.772 error (28605) ERR! cwd /opt/iobroker/node_modules/iobroker.javascript/node_modules/canvas javascript.0 2020-04-12 14:11:40.772 error gyp javascript.0 2020-04-12 14:11:40.772 error gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "--fallback-to-build" "--module=/opt/iobroker/node_modules/iobroker.javascript/node_modul javascript.0 2020-04-12 14:11:40.772 error (28605) ERR! System Linux 4.14.24-qnap javascript.0 2020-04-12 14:11:40.771 error gyp javascript.0 2020-04-12 14:11:40.771 error gyp ERR! stack at WriteWrap.afterWrite [as oncomplete] (net.js:789:14) javascript.0 2020-04-12 14:11:40.771 error gyp ERR! stack javascript.0 2020-04-12 14:11:40.771 error gyp ERR! stack Error: write EPROTO 140309190592320:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../deps/openssl/openssl/ssl/record/ssl3_record.c:332: javascript.0 2020-04-12 14:11:40.771 error (28605) ERR! configure error javascript.0 2020-04-12 14:11:40.771 error (28605) gyp javascript.0 2020-04-12 14:11:40.750 error (28605) WARN install got an error, rolling back install javascript.0 2020-04-12 14:11:40.749 error (28605) gyp javascript.0 2020-04-12 14:11:40.010 error javascript.0 2020-04-12 14:11:40.010 error node-pre-gyp WARN Hit error write EPROTO 140394849888064:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../deps/openssl/openssl/ssl/record/ssl3_record.c:332: javascript.0 2020-04-12 14:11:40.010 error (28605) WARN Pre-built binaries not installable for canvas@2.6.1 and node@10.19.0 (node-v64 ABI, glibc) (falling back to source compile with node-gyp) javascript.0 2020-04-12 14:11:40.009 error (28605) node-pre-gyp javascript.0 2020-04-12 14:11:39.689 error (28605) WARN Using request for node-pre-gyp https download javascript.0 2020-04-12 14:11:39.688 error (28605) node-pre-gyp javascript.0 2020-04-12 14:11:39.283 info > node-pre-gyp install --fallback-to-build javascript.0 2020-04-12 14:11:39.283 info > canvas@2.6.1 install /opt/iobroker/node_modules/iobroker.javascript/node_modules/canvas javascript.0 2020-04-12 14:11:39.283 info (28605) javascript.0 2020-04-12 14:11:33.999 info (28605) npm install canvas --production --prefix "/opt/iobroker/node_modules/iobroker.javascript" (System call) javascript.0 2020-04-12 14:11:33.970 info (28605) starting. Version 4.4.3 in /opt/iobroker/node_modules/iobroker.javascript, node: v10.19.0
ist das bei Dir eingetragene Modul "xmlhttprequest" relevant für den mihome-vacuum?
Gruß,
Tim -
@ts020339 said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
ist das bei Dir eingetragene Modul "xmlhttprequest" relevant für den mihome-vacuum?
Beide im Javascript-Adapter eingetragenen Module sind nur dann notwendig, wenn du die Live-Karte über den Javascript-Adapter erstellen lassen willst. (siehe 4 Beiträge weiter oben)
Über den Mihome-Adapter hat das bei mir nicht funktioniert...da habe ich aber grade mal im Partner-Thread eine Anfrage gestartet.Wieso die Installation/upgrade bei dir scheitert kann ich mir nicht erklären.
Bei mir hatte es funktioniert - ich habe da aber auch viel rum gespielt, weil das mit der ENV-Variable vorerst nicht funktionierte. Scheinbar habe ich dann irgendwo unbewusst was richtig gemacht.
Letzten Endes funktionierte bei mir erst alles schlagartig auf Anhieb, nachdem die Pakete erfolgreich über die ENV-Variable installiert wurden.Hier muss ich passen.
Hoffentlich kann dir wer anders weiter helfen.(PS: Meine NPM-Version ist ebenfalls 6.13.4 und meine MiHome-vacuum-Version ist die 2.0.7
Ich hatte vorher keine alte Version des Adapters installiert...vielleicht bringt es stumpf was den Adapter über den Admin-Adapter nochmal komplett raus zu werfen und anschließend über den Admin-Adapter komplett in aktueller Version zu installieren?...sieht wenig vielversprechend aus, wäre aber einen schnellen Versuch wert) -
@FoodFighter said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Ich hatte vorher keine alte Version des Adapters installiert...vielleicht bringt es stumpf was den Adapter über den Admin-Adapter nochmal komplett raus zu werfen und anschließend über den Admin-Adapter komplett in aktueller Version zu installieren?...sieht wenig vielversprechend aus, wäre aber einen schnellen Versuch wert)
habs schnell mal ausprobiert, leider ohne Erfolg
... NUR... wie bekomme ich denn jetzt meine alte 1.1.5 zurück?? Die hat wenigstens funktioniert... Eine Auswahl der zu installierenden Version im Expertenmodus gibt es offenbar nur, wenn der Adapter selber installiert ist... habe ich gerade festgestellt... -
@andre said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Mit umgezogen sind natürlich auch die weiteren Container mit redis, mariadb, influxdb und grafana. Zum Glück alles ohne größere Probleme.
Jetzt hab ich endlich produktiv mal mit "Stack" im Portainer gearbeitet. Das schreit irgendwie nach nem neuen Tutorial...Ich habe auch noch andere Container mit umgezogen. Bei denen hat der Zugriff übers Netzwerk aber funktioniert, weil ich nur für iobroker MACVLAN nutze. Und das hat natürlich dann umso mehr dazu geführt, dass ich die Ursache beim Image gesehen habe
Die Stack Funktion in Portainer wollte ich in diesem Zuge auch mal ausprobieren, hat aber ebenfalls nicht funktioniert, wenn ich in dem yaml File noch eine Network config mit angegeben habe. Gab einen tollen Fehler "page not found" und dann habe ich wieder regulär docker-compose genutzt. Kann natürlich auch einfach am genannten Kernel Bug gelegen haben....
Generell ist diese Funktion in Portainer auch einfach schlecht bis gar nicht dokumentiert oder täuscht das? Lohnt es sich das Thema noch mal anzugehen?
@FoodFighter
Bei solchen absurden Fehlern ist es wirklich nur Glück ob man die Lösung findet oder nicht. Hätte ich nicht aus reiner Verzweiflung das mit dem Ping probiert, hätte ich ja nicht mal gewusst wonach ich googeln soll...
Aber auch irgendwie verwunderlich, dass ein solcher Bug seit Mitte Januar im Kernel ist und noch kein offizieller Patch veröffentlicht wurde. -
@andre Hi Andre, d.h. du hast jetzt eine docker-compose mit macvlan für den ioBroker? Würdest du diese mal zeigen?
-
@darkiop said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@andre Hi Andre, d.h. du hast jetzt eine docker-compose mit macvlan für den ioBroker? Würdest du diese mal zeigen?
Bin zwar nicht Andre, kann dir aber mal mein File zeigen:
version: '2.4' services: iobroker: image: buanet/iobroker:beta hostname: iobroker-docker networks: bridge: macvlan: ipv4_address: 192.168.178.162 #ports: # - "8081:8081" # - "8082:8082" volumes: - "./iobroker:/opt/iobroker" devices: - "/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00xxx-if00:/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00xxx-if00" restart: always depends_on: - fhem fhem: image: fhem/fhem:latest networks: - bridge ports: - "8083:8083" volumes: - "./fhem:/opt/fhem" devices: - "/dev/serial/by-id/usb-03eb_AT91USBSerial1-if00:/dev/serial/by-id/usb-03eb_AT91USBSerial1-if00" #environment: # FHEM_UID: 6061 # FHEM_GID: 6061 # TIMEOUT: 10 # RESTART: 1 # TELNETPORT: 7072 # TZ: Europe/Berlin restart: always networks: bridge: driver: bridge macvlan: external: name: macvlan0
Ergänzungen?
Das macvlan muss man in dem Fall per "docker networt create -d macvlan -..." erst noch erstellt werden. Soweit ich weiß kann man das aber komplett im compose File erledigen.
-
Ich habe hier mal ein Beispiel. Nur mit ioBroker-Container und den Netzwerken (MACVLAN + internes Bridge Netzwerk). Werde dazu auch noch ein Tutorial schreiben. Dann aber gleich zusammen mit einem Redis-Container. Dazu muss die aktuelle Beta aber erst zum "latest" werden (wegen der Möglichkeit gleich beim Setup Redis zu konfigurieren).
version: "2" services: iobroker: container_name: iobroker image: buanet/iobroker:latest hostname: iobroker restart: always networks: macvlan: ipv4_address: 192.168.0.73 bridge: ipv4_address: 172.18.0.2 environment: - PACKAGES=nano volumes: - /volume1/docker/iobroker_data:/opt/iobroker networks: macvlan: driver: macvlan driver_opts: parent: eth0 ipam: config: - subnet: 192.168.0.0/24 gateway: 192.168.0.1 ip_range: 192.168.0.72/29 aux_addresses: net-address: 192.168.0.72 # Reservierte Adresse, damit Docker nicht die Netzadresse vergibt. bridge: driver: bridge ipam: config: - subnet: 172.18.0.0/16 gateway: 172.18.0.1 ip_range: 172.18.0.1/24
MfG,
André -
@andr @Holzlenkrad Danke euch, das deckt sich fast mit meinen Versuchen.
-
Hallo,
André hat mich hierher verwiesen...ich hoffe, die Frage ist hier richtig, da zwar nicht Synologie, aber das Docker-Image von buanet auf dem Pi verwendet wird...Hakelig für Neulinge ist ja die Netzwerkkonfiguration des Containers. Ich habe folgendes Heimnetzwerk (FritzBox = 192.168.1.1):
Ich wollte (um möglichst nah an Andrés Anleitung zu bleiben) mit MACVLAN arbeiten. Wenn ich das richtig verstanden habe, dann sollte die ioBroker-Installation unter 192.168.1.250 ansprechbar sein für all die anderen Smart-Home-Geräte.
Die Konfiguration habe ich folglich (hoffentlich richtig) so erstellt:
Gegen Ende der Container-Erstellung habe ich von meiner Fritzbox dann auch die Mail bekommen mit der Heimnetzänderung:
Folgendes Problem nun: Ich kann .250 und .16 von meinem Windows-PC aus nicht anpingen (Zeitüberschreitung der Anforderung.) .16 verstehe ich auch nicht, da mein Raspi von der Fritzbox fix die 25 per DHCP zugewiesen bekommt (und darunter auch erreichbar ist). Nach einem Reboot des Raspis habe ich noch ne Mail bekommen, nun soll der Raspi auf .17 laufen, tut er aber nicht (fix auf 25 und ist dort erreichbar).
Hat jemand ne Idee, was ich da falsch mache? Habe ich das Konzept nicht verstanden? Die virtuelle IP von ioBroker (250) sollte doch im gleichen Netz wie alle anderen Geräte sein? Oder hätte ich da z.B. 192.168.2.x für alle Netzwerk-Angaben oben verwenden sollen? Aber dann würde ioBroker mit 192.168.2.250 ja nicht mit den Geräten in 192.168.1.x kommunizieren können, oder?
Viele Grüße, Steffen
-
@stevie77
Hast du gelesen, was "Holzlenkrad" diesbezüglich 14 Beiträge über deinem geschrieben hat?
Beitrag 1683 -
@stevie77 : was ist denn bei Deinem Raspi in den NEtzwerkeinstellungen eingestellt? Eine fixe IP-Adresse (z.B. die 192.168.1.16? ) oder dass er sich die IP von einem DHCP Server abholt?
Außerdem: Hängt Dein Raspi über WLAN oder LAN im Hausnetz?
Ich würde in Deinen Containereinstellungen auch für den iobroker Container mal eine fixe MAc-ADresse einstellen (z.B. die jetzt angezeigt). Bei mir war das z.B. sonst öfeters so, dass er bei ERstellung eines neuen Containers (z.B. wegen update) immer mal gern eine neue MAc-Adresse generiert hat und damit die Fritzbox-Einstellungen scheiterten.
Gruß,
Tim -
@FoodFighter Nee, ich bin irgendwie noch etwas überfordert mit der Erstellung und Darstellung der Beiträge in diesem Forum. Werde mir das aber gleich mal ansehen und versuchen zu verstehen...
-
@stevie77
Ansonsten einfach "sudo rpi-update" eingeben, Raspi neustarten und den Docker Container noch mal genau so erstellen (alten sicherheitshalber löschen; das macvlan-Netzwerk musst du nicht neu erstellen), wie du es bisher gemacht hast. Das war nämlich im Endeffekt sogar richtig. -
@ts020339 Der Raspi holt sich die IP per DHCP von der Fritzbox und bekommt dann immer die 25 zugewiesen. Er hängt per Kabel im Hausnetz. Die Fritzbox hat ja auch scheinbar erkannt, dass da jetzt ein neuer "PC" (vergebener Name PC-192-168-1-250) auf 250 liegt (zeigte ihn erst im Abschnitt Aktive Verbindungen an, danach irgendwann im Abschnitt Ungenutzte Verbindungen - wobei da viele Geräte angezeigt werden, die funktionieren).
-
@Holzlenkrad Nur zum Verständnis als Neueinsteiger: Ist die ganze Technik rund um Docker so unzuverlässig, dass man mehrere gleiche Versuche braucht bis es zufällig mal klappt? Oder was ist der Hintergrund dieses Ratschlags (fast alles wegwerfen und dann nochmals gleich machen)?
Mein Vorgehen und Verständnis des Ganzen ist also aber prinzipiell richtig wenn du schreibst, dass "es im Endeffekt sogar richtig" war? Es braucht eine IP (250 bei mir) im gleichen Subnetz (192.168.1.x bei mir) auf der die Heimnetzgeräte dann ioBroker ansprechen können und von ioBroker angesprochen werden, ja? Und als Gateway gibt man die Fritzbox an?