NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
@ozboss sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Ich habe versuch ein js-conroller update mit dieser Vorlage von @andre zu machen.
Leider bekomme ich bei dem Befehliobroker update
ein "Permission denied".
Wenn ich die alternative Variante mitnpm install iobroker.js-controller –-production
versuche bekomme ich folgende Fehler:Also es scheint zu funktionieren, wenn ich mich als Benutzer "iobroker" anmelde. Aber auch nur wenn ich
iobroker update
mit sudo ausführe. Leider werde ich dann nach einem Passwort gefragt welches ich natürlich nicht habe....Mod-Edit: Vollzitat gekürzt! Bitte vermeidet Vollzitate! Siehe Forum Regeln, Punkt 2
-
Hallo...
nachdem mein container mittlerweile einwandfrei lief habe ich heute den „Fehler“ gemacht und den VMM auf der DS installiert.
Prompt kommt beim Starten des Containers der Fehler „failed to create Macvlan: device or resource busy“Kennt da jemand ne Lösung für?
Das macvlan hat eine eigene Adresse, sodass das eigentlich nicht kollidieren dürfte aber ich denke dass sich die Netzwerkkarte hier bereits in Benutzung befindet.
Ich finde aber auch keinen Weg um den VMM kurzfristig zu Testzwecken zu deaktivieren und einfach deinstallieren ist ja keine Lösung.Gruß
Carsten -
@Telefisch Der VMM installiert eine "Virtualisierungsschicht" auf die Netzwerkdevices. Das bedeutet dass jetzt ein virtuelles Device die IP-Adresse deiner DS hält.... Mach mal ein "ifconfig" auf der Kommandozeile deiner DS, dann siehst du was ich meine.
Du musst dein MACVLAN neu anlegen und das korrekte Netzwerkdevice angeben. Dann funktioniert dein MACVLAN und auch der Container wieder....MfG,
André -
@andre perfekt, Andre.
Vielen Dank, nu läuft es wieder
Netzwerkdevice heißt jetzt ovs_eth0
Dankeschööön -
@andre Was es nicht alles gibt
Hatte VMM schon laufen, bevor ich MACVLAN eingerichtet hatte, daher ist mir das gar nicht aufgefallen, aber gut zu wissen, falls man mal alles neu machen muss.
Danke. -
Kann ich im Docker oder Portainer was einstellen, dass der Container nach einem Stromausfall wieder automatisch gestartet wird?
Portainer funktioniert, nur der ioBroker wird nach einem Stromausfall nicht wieder gestartet.
-
-
@Negalein
a) wie @Glasfaser es angibt, das geht im Docker von Synologyoder
b) unter Portainer, da musst dann aber unter Duplicate/Edit es einstellen:
Beides geht nur, wenn der Container gestoppt ist.
-
Danke euch.
Hab überall geschaut. Nur auf die einfachste Möglichkeit bin ich nicht gekommen. -
Sorry ich will nicht nerven, aber kann mir hierbei jemand helfen? Ich weiß wirklich nicht weiter.
-
Gehe über die Synology Terminal Konsole .
iobroker stop pkill io curl -sL https://iobroker.net/fix.sh | bash - iobroker update iobroker upgrade self iobroker start
-
@ozboss
Von der SeiteAnalog zur ioBroker-Dokumentation würde das Update des js-controllers über die Kommandozeile im ioBroker-Container z.B. wie folgt aussehen: pkill io iobroker update iobroker upgrade self node node_modules/iobroker.js-controller/controller.js >/opt/scripts/docker_iobroker_log.txt 2>&1 & alternativ: pkill io npm install iobroker.js-controller –-production node node_modules/iobroker.js-controller/controller.js >/opt/scripts/docker_iobroker_log.txt 2>&1 &
ich mach das immer mit der 1. Variante und klappt, mich wundert es, dass Du Rechtsprobleme hast.
Welche Version von Baumet benutzt Du?
Erscheint im Log beim Start auch das mit dem "Fix", der lässt beim starten direkt ein Fix mitlaufen, damit die Rechte richtig sind. -
Ich hab meinen gerade auf 2.2.8 upgedatet.
pkill io iobroker update iobroker upgrade self iobroker start
-
Danke für die vielen Antworten
Wie bereits beschrieben kann ich den Befehliobroker update
leider nicht ausführen, ich bekomme ein "Permission denied".
In Portainer gehe ich dafür auf die Container Konsole und verbinde mich mit Command auf "/bin/bash" und User auf "root" eingestellt.@tugsi sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
ich mach das immer mit der 1. Variante und klappt, mich wundert es, dass Du Rechtsprobleme hast.
Welche Version von Baumet benutzt Du?
Erscheint im Log beim Start auch das mit dem "Fix", der lässt beim starten direkt ein Fix mitlaufen, damit die Rechte richtig sind.Ich weiß nicht was du mit "Fix" meinst, allerdings habe ich festgestellt, dass beim Starten im Log folgende Fehler auftauchen:
------------------------------------------------------------ ----- Step 3 of 5: Checking ioBroker installation ----- ------------------------------------------------------------ (Re)Setting folder permissions (This might take a while! Please be patient!)... Done. Fixing "sudo-bug" by replacing sudo in iobroker with gosu... Done. /opt/scripts/iobroker_startup.sh: line 169: /usr/bin/iobroker: Permission denied /opt/scripts/iobroker_startup.sh: line 169: [: !=: unary operator expected ------------------------------------------------------------ ----- Step 4 of 5: Applying special settings ----- ------------------------------------------------------------ Some adapters have special requirements/ settings which can be activated by the use of environment variables. For more information take a look at readme.md on Github! /opt/scripts/iobroker_startup.sh: line 192: /usr/bin/iobroker: Permission denied /opt/scripts/iobroker_startup.sh: line 192: [: 8081: unary operator expected
Im restlichen Log sind keine Fehler zu erkennen.
FYI:
Der Container läuft bei mir auf OMV und nicht auf Synology, aber das sollte ja eigentlich kein Problem sein. -
-
@Glasfaser sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Setze mal nach pkill io , den Befehl noch dazwischen ab
chmod 777 /opt/iobroker/iobroker
leider immer noch "Permission denied"...
-
Lege doch mal einen neuen Container mit Portainer an mit :
Portainer---Recreate --- Pull latest image
-
Ich muss jetzt auch nochmal nachfragen zum Thema USB und Rechtevergabe.
Habe ich da was überlesen? Muss ich in den Environment-Variablen was angeben für USB?
Im Moment muss ich nach Neustart des Containers immer chmod 777 /dev/ttyACM* ausführen. -
-
@Glasfaser das klingt zwar logisch aber wenn ich /dev/ttyACM0;/dev/ttyACM1 dort eintrage und den Container damit "kopiere" steht anschließend wieder None drin.
Ich kann machen was ich will.
: statt ; oder " davor und dahinter oder löschen und neu anlegen...
Völlig egal, immer none
WTF?