NEWS
IoBroker unter Docker auf der Synology DiskStation?
-
@rrr:Hey, danke dir.
Das mit den manuellen Backups hatte ich auch schon versucht. Da gibts ja eine direkte Funktion für, was ein tar erstellt.
sudo iobroker backup
erstellt unter /opt/iobroker/backups ein Backup in der Form 2018_08_03-19_17_36_backupiobroker.tar.gz.
Das mit dem Hyper Backup ist eine gute Idee. Finde ich auch besser.
Bildschirmfoto 2018-08-12 um 22.58.51.JPG
So ist es bei mir in DSM eingestellt. Aber irgendwie bleibt der Ordner leer. Ich müsste doch den Inhalt sehen, oder?
Nachtrag:
Mittlerweile hat sich der Ordner gefüllt… `
Hallo,
Das Verzeichnis iobroker/backup auf der NAS sollte nicht leer sein. Melde Dich mal im Docker Container an (z.B. über den Punkt Terminal im ioBroker Docker Container) und schaue Dir einmal das Verz. /opt/iobroker an. Ist das gefüllt? Dann führe einmal den Befehl mount im Docker Container an. Ist das Verzeichnis /opt/iobroker mit iobroker/backup gemounted ?
-
Habe es nun auch entsprechend umgesetzt, da die Home-APP den Homekit-Controller nicht finden wollte. Dabei bin ich auf folgende Probleme gestoßen:
1. Die Einrichtung des Adapters habe ich wie folgt vorgenommen:
docker network create -d macvlan –subnet=192.168.50.0/24 --gateway=192.168.50.1 --ip-range=192.168.50.101/28 --aux-address 'host=192.168.50.101' -o parent=ovs_eth1 mac0
Das hat auch wunderbar funktioniert. Mein IOBrocker-Docker bekommt die IP 192.168.50.96 und ist auch von außen ansprechbar. Leider bekomme ich keine Verbindung zum NAS und meinem MQQT-Broker. Daher habe ich diese Befehle auf dem NAS eingegeben:
ip link add mac1 link ovs_eth1 type macvlan mode bridge
ip addr add 192.168.50.101/32 dev mac1
ip link set mac1 up
ip route add 192.168.50.101/32 dev mac1
Die IP kann ich von außen anpingen, intern aus dem Docker leider nicht Die IP´s sind auch frei und nicht in Benutzung.
2. Mein internes DNS-problem konnte ich selber lösen
Homekit funktioniert nun dank dieser Anleitung. Nur das Problem mit der internen Verbindung zum NAS schmälert aktuell das Resultat.
Hier die Routen:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default fritz.box 0.0.0.0 UG 0 0 0 ovs_eth1
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
192.168.50.0 0.0.0.0 255.255.255.0 U 0 0 0 ovs_eth1
192.168.50.101 0.0.0.0 255.255.255.255 UH 0 0 0 mac1
-
Habe es nun auch entsprechend umgesetzt, da die Home-APP den Homekit-Controller nicht finden wollte. Dabei bin ich auf folgende Probleme gestoßen:
1. Die Einrichtung des Adapters habe ich wie folgt vorgenommen:
docker network create -d macvlan –subnet=192.168.50.0/24 --gateway=192.168.50.1 --ip-range=192.168.50.101/28 --aux-address 'host=192.168.50.101' -o parent=ovs_eth1 mac0
Das hat auch wunderbar funktioniert. Mein IOBrocker-Docker bekommt die IP 192.168.50.96 und ist auch von außen ansprechbar. Leider bekomme ich keine Verbindung zum NAS und meinem MQQT-Broker. Daher habe ich diese Befehle auf dem NAS eingegeben:
ip link add mac1 link ovs_eth1 type macvlan mode bridge
ip addr add 192.168.50.101/32 dev mac1
ip link set mac1 up
ip route add 192.168.50.101/32 dev mac1
Die IP kann ich von außen anpingen, intern aus dem Docker leider nicht Die IP´s sind auch frei und nicht in Benutzung.
2. Mein internes DNS-problem konnte ich selber lösen
Homekit funktioniert nun dank dieser Anleitung. Nur das Problem mit der internen Verbindung zum NAS schmälert aktuell das Resultat. `
da ist ein kleiner Tippfehler (28 statt 32) bei den ip link Befehlen auf der NAS. Probiere mal folgendes:
ip link del mac1 ip link add mac1 link ovs_eth1 type macvlan mode bridge ip addr add 192.168.50.101/32 dev mac1 ip link set mac1 up ip route add 1192.168.50.101/28 dev mac1
Funktioniert es jetzt?
Nachtrag: Wichtig, die Adresse 192.168.50.101 war vorher nicht vergeben, d.h. das ist nicht die NAS Adresse am Device ovs_eth1
-
Das hat leider nicht funktioniert…
ash-4.3# ip route add 192.168.50.101/28 dev mac1
RTNETLINK answers: Invalid argument
Die Adresse ist vorher nicht vergeben worden, nun aber natürlich in Benutzung.
-
Das hat leider nicht funktioniert…
ash-4.3# ip route add 192.168.50.101/28 dev mac1
RTNETLINK answers: Invalid argument
Die Adresse ist vorher nicht vergeben worden, nun aber natürlich in Benutzung. `
Also bei bei Mask Bit 28 stehen Dir bei 192.168.50.101/28 folgende IP Adressen zur Verfügung 192.168.50.96 - 192.168.50.111. D.h Dein Docker Container im MAC0 Netzt sollten eine IP Adresse von 192.168.50.97 bis 192.168.50.111 haben (http://www.subnet-calculator.com). Diese IP Adressen dürfen durch Deine NAS (DHCP) nicht vergeben werden!
Fahre einmal alle Docker Container runter die das MAC0 Netz nutzen. Nun folgendes Skript auf der NAS ausführen. Den Befehl ip link del mac1 nicht vergessen! Damit alles alte gelöscht wird!
ip link del mac1 ip link add mac1 link ovs_eth1 type macvlan mode bridge ip addr add 192.168.50.96/32 dev mac1 ip link set mac1 up ip route add 1192.168.50.101/28 dev mac1
Nun fahre Deine Docker Container wieder hoch und versuche aus dem Docker Container die IP-Adresse 192.168.50.96 zu erreichen. Es kann sein, dass Du das MAC0 Netz nochmals anlegen musst um die aux-address auf 192.168.50.96 zu legen. Dann Docker Container aus dem MAC0 Netz runterfahren. Dann änderst Du in den Container das Netzwerkdevice ohne hochzufahren. Anschliessend löscht Du das MAC0 in Docker und legst es neu an und weißt das neue MAC0 Netz den Docker Containern wieder zu.
docker network create -d macvlan --subnet=192.168.50.0/24 --gateway=192.168.50.1 --ip-range=192.168.50.101/28 --aux-address 'host=192.168.50.96' -o parent=ovs_eth1 mac0
Ich habe bei mir das 192.168.50.80/28 gewählt, da es übersichtlicher ist. Da gehen die IP-Adressen von 192.168.50.80 - 192.168.50.95. Und da ist keine Adresse kleiner 192.168.50.80, sondern immer größer als 192.168.50.80
-
Leider immer noch der selbe Fehler…
ash-4.3# ip route add 192.168.50.97/28 dev mac1
RTNETLINK answers: Invalid argument
Ich habe als erstes den Container heruntergefahren und das Netzwerk MAC0 gelöscht. Danach habe ich den Befehl
docker network create -d macvlan --subnet=192.168.50.0/24 --gateway=192.168.50.1 --ip-range=192.168.50.101/28 --aux-address 'host=192.168.50.96' -o parent=ovs_eth1 mac0
eingegeben und den Container wieder zugeordnet und dann gestartet. Dieser hat nun die Adresse 192.168.50.97
1: lo: <loopback,up,lower_up>mtu 65536 qdisc noqueue state UNKNOWN group default
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
50: eth0@if9: <broadcast,multicast,up,lower_up>mtu 9000 qdisc noqueue state UNKNOWN group default
inet 192.168.50.97/24 scope global eth0
valid_lft forever preferred_lft forever
Nun hab ich wieder folgende Befehle auf dem NAS eingeben bei eingeschaltetem Container
ip link del mac1
ip link add mac1 link ovs_eth1 type macvlan mode bridge
ip addr add 192.168.50.96/32 dev mac1
ip link set mac1 up
ip route add 192.168.50.97/28 dev mac1
Beim letzten Befehl kommt der besagte Fehler
Die IP-Adressen sind nicht vergeben und werden auch nicht vergeben.</broadcast,multicast,up,lower_up></loopback,up,lower_up>
-
Der letzte Befehl muss auch
ip route add 1192.168.50.101/28 dev mac1
sein und nicht,
ip route add 1192.168.50.97/28 dev mac1
Ich würde aber vorher das mac1 wider löschen und dann folgendes eingeben:
ip link del mac1 ip link add mac1 link ovs_eth1 type macvlan mode bridge ip addr add 192.168.50.96/32 dev mac1 ip link set mac1 up ip route add 1192.168.50.101/28 dev mac1
funktioniert das?
-
Geht auch nicht…
ash-4.3# ip route add 192.168.50.101/28 dev mac1
RTNETLINK answers: Invalid argument
-
okay, ich habe es jetzt einmal auf meiner NAS mit Deinem Subnetz nachgestellt. Ich habe alles mit 192.168.50.101 im mac0 u. mac1 ersetzt. Dann ging es bei mir!
docker network create -d macvlan --subnet=192.168.50.0/24 --gateway=192.168.50.1 --ip-range=192.168.50.96/28 --aux-address 'host=192.168.50.96' -o parent=ovs_eth1 mac0
und
ip link del mac1 ip link add mac1 link ovs_eth1 type macvlan mode bridge ip addr add 192.168.50.96/32 dev mac1 ip link set mac1 up ip route add 1192.168.50.96/28 dev mac1
Also wenn das jetzt nicht funktioniert, dann weiss ich nicht weiter!
Damit hat die NAS die zusätzliche IP Adresse 192.168.50.96. Die Docker Container haben eine Adresse zwischen 192.168.20.97 und 192.168.20.111. Also aus dem Docker Container einmal die 192.168.50.96 mit ping erreichen.
-
Hallo zusammen,
zunächst mal vielen Dank für die super Anleitung.
Leider bekomme ich das Ganze nicht so richtig zum Laufen. Ich kann zwar meinen Nas und auch die CCU vom Docker anpingen, erreiche die Geräte aber nicht über die Adapter (backitup/hm.rpc*/ etc).
Folgende Befehel/Einstellungen habe ich gewählt:
docker network create -d macvlan --subnet=192.168.178.0/24 --gateway=192.168.178.1 --ip-range=192.168.178.160/28 --aux-address 'host=192.168.178.160' -o parent=eth0 mac0
ip link add mac1 link eth0 type macvlan mode bridge ip addr add 192.168.178.160/32 dev mac1 ip link set mac1 up ip route add 192.168.20.160/28 dev mac1
ash-4.3# ifconfig docker0 Link encap:Ethernet HWaddr 02:42:18:E7:9B:D1 inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) eth0 Link encap:Ethernet HWaddr 00:A0:98:34:9C:CD inet addr:192.168.178.50 Bcast:192.168.178.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:402279 errors:0 dropped:0 overruns:0 frame:0 TX packets:173421 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:470992424 (449.1 MiB) TX bytes:58771807 (56.0 MiB) Interrupt:141 base 0x8000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:98974 errors:0 dropped:0 overruns:0 frame:0 TX packets:98974 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:13326192 (12.7 MiB) TX bytes:13326192 (12.7 MiB) mac1 Link encap:Ethernet HWaddr D6:52:15:D6:1D:7A inet addr:192.168.178.160 Bcast:0.0.0.0 Mask:255.255.255.255 inet6 addr: fe80::d452:15ff:fed6:1d7a/64 Scope:Link inet6 addr: 2a02:908:1980:b680:d452:15ff:fed6:1d7a/64 Scope:Global UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8471 errors:0 dropped:0 overruns:0 frame:0 TX packets:256 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1954362 (1.8 MiB) TX bytes:46542 (45.4 KiB) tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
root@iobroker:/opt/iobroker# ip a 1: lo: <loopback,up,lower_up>mtu 65536 qdisc noqueue state UNKNOWN group defaul t link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: sit0: <noarp>mtu 1480 qdisc noop state DOWN group default link/sit 0.0.0.0 brd 0.0.0.0 15: eth0@if3: <broadcast,multicast,up,lower_up>mtu 1500 qdisc noqueue state UNK NOWN group default link/ether 02:42:c0:a8:b2:a1 brd ff:ff:ff:ff:ff:ff inet 192.168.178.161/24 scope global eth0 valid_lft forever preferred_lft forever</broadcast,multicast,up,lower_up></noarp></loopback,up,lower_up>
Habe weder bond noch vlan aktiv..
Jemand eine Idee weshalb es nicht funktioniert? muss ich im Docker noch eine Portfreigabe einrichten?
edit… Hatte micht verschrieben. Funktioniert jetzt alles:
ip link add mac1 link eth0 type macvlan mode bridge
ip addr add 192.168.178.160/32 dev mac1
ip link set mac1 up
ip route add 192.168.20.160/28 dev mac1
-
Hi,
mal eine Frage ins Forum hat jemand den Backitup Adapter im Docker auf der DS schon sauber am laufen,
ich bekomme weder über FTP noch über NAS eine saubere Lösung.
Habe ich die NAS Einstellung bekomme ich keine automatischen Backups bekomme zwar per Telegramm die Info das ein Backup gemacht wurde es wird aber kein neues angelegt, mach ich es manuell geht es, zeigt mir aber diesen Fehler an.
[ERROR] [umount] - [IGNORED] Error: Command failed: umount /opt/iobroker/backups
umount: /opt/iobroker/backups: must be superuser to unmount
mache ich es über FTP macht er zwar ein automatisches Backup und auch Manuell diese sind aber Leer zeigt 0 bytes an.
Vielleicht kann mir ja jemand weiterhelfen.
Auf meiner Testumgebung auf dem Tinker funktioniert alles wunderbar mit genau den gleichen Einstellungen.
Grüße
-
Ich habe backitup als backup Lösung unter Docker am laufen. Wiederherstellen funktioniert derzeit aber noch nicht. Ich vermute es hängt mit den unterschiedlichen Befehlen zum Starten bzw. Stoppen des iobroker adapters zusammen.
Hast du den Container im Host Netzwerk oder unter einer virtuellen Netzwerkressource laufen? Ich nutze letzteres…
-
Hi,
hab ihm im Host laufen.
-
@Homer1976:Hi,
hab ihm im Host laufen. `
Das ist was anderes, Host / Bridge = Netzwerk
Ich rede von Ausführung mit hohen rechten
Sent from my iPhone using Tapatalk
-
Da bin ich raus das musst du mir näher erklären so gut sind meine Kenntnisse nicht. :shock:
-
@Homer1976:Hi,
hab ihm im Host laufen. `
Welche Host IP hast du eingerichtet? 127.0.0.1?
Hast du mal versucht ihn über mac0, wie oben im thread beschrieben, laufen zu lassen? Meiner Meinung nach erspart man sich mit einer dedizierten ip viel Ärger…
-
@Homer1976:Hi,
hab ihm im Host laufen. `
Welche Host IP hast du eingerichtet? 127.0.0.1?
Hast du mal versucht ihn über mac0, wie oben im thread beschrieben, laufen zu lassen? Meiner Meinung nach erspart man sich mit einer dedizierten ip viel Ärger… `
Hab den Docker von Buanet am laufen und auf diese Beschreibung eingerichtet, die IP ist die selbe wie von der DS.
-
Die Sicherung von Backitup funktioniert scheinbar mit FTP. Mit CIFS habe ich noch nicht hinbekommen.
-
Ich denke das hängt damit zusammen, dass ein Container von außen nicht einfach erreicht werden kann, das ist ein Schutzmechanismus.
Ich habe dies vor einiger Zeit in einem Docker-Blog glesen.
Die zur Verfügungstellung eines Zugriffs auf Laufwerke - Container zu Container - scheint relativ kompliziert zu sein.
Ich habe danach nicht erneut versucht über CIFS zu gehen.
Ist zwar keine wirkliche Antwort/Hilfe (und ziemlich halbgar/wischiwaschi) aber vielleicht gehst Du auch noch mal auf Recherche zu diesem Thema 8-)
-
Wenn ihr ioBroker auf der NAS laufen habt, warum nutzt ihr dann nicht HyperBackup zur Datensicherung?
Gesendet von iPhone mit Tapatalk