NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
@Segway sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Welche Version läuft denn bei dir gerade?
Welches OS?root@ioBroker:/opt/iobroker# node -v
v6.14.4
root@ioBroker:/opt/iobroker# nodejs -v
v6.14.4
root@ioBroker:/opt/iobroker# npm -v
3.10.10ioBroker läuft auf einer Synology DS718+ im Docker
-
-
@Segway sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@Negalein
npm 3 ist ziemlich alt - daher update.
Da ich nicht weiss wie genau du installiert hast, kann ich nur auf die Doku auf iobroker verweise --> HIER
alles auf eigene Gefahr - bitte vorher Sicherungen entsprechend anlegenIch habe nach Andre's Anleitung installiert.
https://buanet.de/2017/09/iobroker-unter-docker-auf-der-synology-diskstation/Also einfach
iobroker stop
apt-get --purge remove node nodejs
apt-get autoremove
rebootNach dem Reboot:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev libpam0g-dev nodejs
rebootUnd zum Schluß noch:
sudo ./reinstall.sh -
@Negalein sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Ich habe nach Andre's Anleitung installiert.
Es hat sich in den letzten Monate einiges grundlegend an der Installationsweise von ioBroker geändert.
Daraus resultiert auch eine andere Behandlung von ioBroker.Ich habe gerade mal schnell (!) auf deinen Link geklickt und quergelesen.
Ich habe auf die Schnelle nur gefunden:
Aufgrund kleinerer Probleme mit dem Docker Image musste ich einige Änderungen vornehmen. Hierdurch hat sich auch das Tutorial geringfügig geändert. So sind zum Beispiel die Befehle „iobroker stop“ und „iobroker start“ nur noch begrenzt nutzbar.
Anscheinend lädtst du das gesamte Image runter, incl. der ioBroker Installation durch Andre(?)
Leider habe ich (auf die Schnelle) nicht gefunden wie Andre ioBroker installiert hat.es gab/gibt die Möglichkeiten
- als User mit sudo npm install.... (auf keinen Fall mehr durchführen)
- als root mit sudo npm install.... (auf keinen Fall mehr durchführen)
- über die aktuelle Installationsroutine mit curl...
-
- hier gab es eine zeitlang noch Rechteprobleme
Abhängig davon ist z.B. ioBroker unterschiedlich zu stoppen
-
@Homoran sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Anscheinend lädtst du das gesamte Image runter, incl. der ioBroker Installation durch Andre(?)
Leider habe ich (auf die Schnelle) nicht gefunden wie Andre ioBroker installiert hat.Ja, so hab ich es gemacht!
In seinem Tutorial schreibt er unter anderem:
Bedienung von ioBroker über die Kommandozeile des Containers
Grundsätzlich kann die ioBroker-Installation wie in der ioBroker-Dokumentation beschrieben bedient werden. Aufgrund von Problemen mit dem Autostart bin ich allerdings gezwungen gewesen ioBroker im Container mit einem anderen Befehl zu starten.
node node_modules/iobroker.js-controller/controller.js >/opt/scripts/docker_iobroker_log.txt 2>&1 &Davon ebenfalls betroffen ist auch das Beenden von ioBroker:
pkill io
https://buanet.de/2017/09/iobroker-unter-docker-auf-der-synology-diskstation/6/
-
Hallo nur eine kurze Verständnisfrage.
Ich habe jetzt den Container geupdated auf die node8 Beta. Wie oft sollte ich den Container updaten ? Und vor allem wo sehe ich welches update was beinhaltet ?
-
Hey andre,
wieso wird der User iobroker eigentlich der Gruppe sudo hinzugefügt? Ist das nicht ein Sicherheitsrisiko wenn iobroker mit Root-Rechten läuft, selbst im Container? -
@Holzlenkrad
Das ist aktuell die quick and dirty Lösung zur Umstellung des iobroker Setups. Bisher lief ja sowieso alles unter root. Damit erstmal wieder alles funktioniert habe ich es so machen müssen. Ziel ist es aber das in Zukunft zu ändern. Da ich aktuell aber nicht genug Zeit zum Entwickeln und Testen habe hängt das Image mit dem neuen ioBroker setup noch immer im beta Status...MfG,
André -
hallo,
ich verwende seit einiger zeit erfolgreich das docker Image. vielen dank dafür
heute habe ich auf die 2.0.6 beta upgedatet, von 2.0.5.
leider habe ich aber keinen zugriff auf das webinterface mehr.
hat vielleicht noch jemand das Problem?danke, lg
-
@andre
Mit dem Update vor ein paar Tagen hast du das Image soweit umgestellt, dass ioBroker komplett unterm Benutzer iobroker läuft oder? Sehr schönDu würdest mir einen riesigen Gefallen tun, wenn du das Image auch für ARMv7, also Raspberry Pi bauen würdest. Bis baue ich mir das Image alle paar Wochen selber, leider schon ein bisschen aufwendig.
Ich würde die beiden RUN Befehle für die Node JS Installation übrigens unter einem Layer zusammenfügen, das Script führt ja selbst schon "apt-get update" aus.
@Stefan-Glück
Du kannst mal probieren im Container ein "chown -R iobroker:iobroker /opt/iobroker" auszuführen, weil mit 2.0.6 jetzt iobroker nicht mehr als root ausgeführt wird. Aber keine Garantie von mir, dass du alles damit schlimmer machst, also kurz auf Andrés Antwort warten.... -
hallo,
danke für die Antwort.
ich werde das probieren, aber nur zum test. ich habe mittlerweile eine neue Installation aufgebaut. aber wenn ich noch ein paar dinge daraus sichern könnte wäre es toll -
Hallo
Könntest du mir weiterhelfen?
Ich hab jetzt Andres Image (Version kann ich jetzt nicht genau sagen, aber kleiner als 2.0) und hab unter anderem ein Problem dass der Hostname ioBroker nicht aufgelöst werden kann.
In der Hosts hätt ich es bereits eingetragen, aber die wird jedesmal nach dem 1. Befehl wieder auf Original (ohne meinen Eintrag) geändert.
Wenn ich jetzt auf Andres aktuelle Beta gehe, also den Docker komplett neu installiere, bekomm ich alle meine jetzigen Einstellungen zurück?
Sicherung hab ich folgende:
1x tgl. minimal über Backitup
alle 3 Tage full über Backitup
1x tgl. mit Andres BackupscriptWäre toll wenn du mir etwas behilflich sein könntest.
Danke
-
@Stefan-Glück Wie @Holzlenkrad Schon gesagt hat, könnte das ein Rechte-Problem sein. Im aktuellen Beta läuft ioBroker jetzt unter dem User iobroker. Eigentlich sollte das Startscript aber beim ersten Start einen Containers die Rechte entsprechend korrigieren. Muss ich mal checken ob das hier auch greifen würde.
Hilfreich wäre es wenn ihr bei solchen Problemen das Log und ggf. die laufenden Prozesse mit postet (unter Portainer wird das "Stats" und "logs" genannt, auf der DS "Prozess" und "Protokoll").MfG,
André -
danke,
da ich ja noch ein paar sachen sichern möchte werde ich das noch rekonstruieren.
dauert nur wahrscheinlich bis zum WE.. aber vielleicht hilft es ja noch.lg
-
@Holzlenkrad sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Mit dem Update vor ein paar Tagen hast du das Image soweit umgestellt, dass ioBroker komplett unterm Benutzer iobroker läuft oder? Sehr schön
Ja.
@Holzlenkrad sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Du würdest mir einen riesigen Gefallen tun, wenn du das Image auch für ARMv7, also Raspberry Pi bauen würdest. Bis baue ich mir das Image alle paar Wochen selber, leider schon ein bisschen aufwendig.
Werde ich wohl nicht so bald schaffen. Ich schaffe es zeitlich ja nicht mal das neue Tutorial online zu stellen um die neue aktuelle Beta zum Stable zu machen. Sorry.
Du könntest aber bei Git einen Issue erstellen, vielleicht findet sich jemand der mich dabei unterstützen will.@Holzlenkrad sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Ich würde die beiden RUN Befehle für die Node JS Installation übrigens unter einem Layer zusammenfügen, das Script führt ja selbst schon "apt-get update" aus.
Kannst du dazu auch nen Issue machen? Dann vergesse ich es nicht und werde das in den nächsten Tagen mal checken. Danke für den Hinweis!
MfG,
André -
@Negalein Hallo,
du kannst auch deine Installation Hochrüsten. Allerdings gibt es da vieles zu beachten.
Ich mache es immer über einen auf der DS duplizierten ioBroker-Ordner und mit einem neuen Container (mit anderem namen) aus dem Image mit der aktuellen Versionsnummer. Da der alte Ordner bestehen bleibt und der alte Container nur gestoppt wird, kannst du jederzeit innerhalb kürzester Zeit zurück.
Wichtig ist, dass du bei einem Update von kleiner 2.0.0 über die Kommandozeile im Container das Script "reinstall.sh" ausführen musst damit deine Installation zur Verwendung mit der neuen Node-Version kompiliert wird (siehe dazu auch die ioBroker-Doku).
Wenn du Probleme hast, stoppe den neuen Container und poste hier eine Beschreibung mit Logs/Prozesse. Dann können wir schauen wo es harkt. Während dessen kannst du die alte Installation ja noch weiter laufen lassen...MfG,
André -
Auch wenn es hier irgendwie ruhig geworden ist...
Hier der Hinweis auf meine neue ioBroker-Docker-Version. Ab sofort steht v3 bereit. Und da sich viel geändert hat gibt es auch ein neues Tutorial dazu: https://buanet.de/2019/05/iobroker-unter-docker-auf-der-synology-diskstation-v3/
MfG,
André -
Hallo,
habe jetzt den Portainer installiert.
Dann meinen bestehenden ioBroker-Docker aktualisiert im Portainer.Dann bekomme ich folgende Meldung:
---------------------------------------- ----- Image-Version: 3.0.0 ----- ----- 2019-05-10 21:27:53 ----- ---------------------------------------- Startupscript running... Installing additional packages... The following packages will be installed: nano Installing additional packages done... Changing permissions upon first run (This might take a while! Please be patient!)... Changing permissions done... Starting ioBroker... Starting ioBroker done... ---------------------------------------- ----- Image-Version: 3.0.0 ----- ----- 2019-05-10 21:30:31 ----- ---------------------------------------- Startupscript running... Installing additional packages... The following packages will be installed: nano Installing additional packages done... Starting ioBroker... Starting ioBroker done...
und dann geht nichts mehr.
Was habe ich verkehrt gemacht?
-
@Superdad Sieht für mich gut aus. Das Log ist sauber. Was sagen die Prozesse?
Falls iob nicht läuft versuch mal über Kommandozeile zu starten...MfG,
André -
OK!
Habe jetzt
root@iobroker:/opt/iobroker# iobroker start
Starting iobroker controller daemon...
iobroker controller daemon started. PID: 288
root@iobroker:/opt/iobroker#
ausgeführt.Jetzt läuft es an.
Warum nicht, wenn ich auf Start drücke?