IP-Symcon 5.x (Docker)

Hallo Klaus, gennau das ist mein Problem. Ich möchte auch zwei USB Devices in IPS nutzen weiß aber nicht wie ich das im Container einstellen soll. Ich wollte gern mein 1wire USB Gateway als auch meine Wetterstation wieder einbinden.

Ich habe das 1wire Gateway in IPS mit USB eigenrichtet, bekomme aber immer folgende Meldung.

Event Control | Wiederverbinden [Serial Port] fehlgeschlagen = open: No such file or directory

Grüße
Ringo

Hab hier am USB Port auch ein z-wave Stick dran… klappt wunderbar.
Schau mal hier.

Erstelle den Container immer über SSH mit zusätzlichem Kommando:

--privileged -v /dev/ttyACM0:/dev/ttyACM0

Danke thezepter, aber ich kann im QNAP für den Container nur auf Verzeichnisse mappen die ich über Drop Down auswählen kann, kann dort keinen Pfad händisch eintragen.

Also muss ich einen Container selbst bauen und kann nicht den vom HUB nehmen und anpassen?

Grüße

Hallo Zusammen,

bei Qnap kannst Du die Verzeichnisse aus dem Docker auf Verzeichnisse des NAS freigeben. Da sind natürlich nur die Pfade zu sehen, die auch im NAS angelegt wurden. Daher den von Dir beschriebenen Effekt.
Auf Deinem Screenshot ist über freigeben die Option Device. Dort kannst Du das USB device mappen.
Ansonsten kannst Du natürlich via SSH mit dem Docker Befehl jede beliebige Variante vorsehen.

Das sollte klappen.
Gruß
Klaus

Hallo Klaus, unter Geräte habe ich bereits tty(4) ausgewählt leider meldet ipsymcon bei der Auswahl des Ports immer Datei oder Verzeichnis nicht gefunden. Docker ist für mich Neuland, mich erschliesst sich noch nicht wie ich via SSH einen Container baue bzw. Docker Befehle absetze. Kann ich das im NAS im Container Dienst machen oder brauche ich eine Linux Maschine mit der ich den Container baue. Ich habe gelesen um einen Container zu bauen muss man eine Skript Datei erstellen. Sorry für meine Umwissenheit.

Grüße
Ringo

Hallo Klaus, ich glaube ich habe es verstanden. Da die QNAP Container Sation keine Möglichkeit einer mauellen Eingabe von Pfaden und Parameter hergibt, muss ich also über SSH das ganze erzeugen. Ich konnte so den USB Port anlegen und mappen.

docker run --rm \
           --name symcon \
           --hostname symcon \
           --privileged -v /dev/ttyACM0:/dev/ttyACM0 \
           -p 3777:3777 \
           -v /share/Symcon/IPSymcon/Data:/var/lib/symcon \
           -v /share/Symcon/IPSymcon/Log:/var/log/symcon \
           -v /share/Symcon/IPSymcon:/root \
           -v /dev/ttyUSB0:/dev/ttyUSB0 \
           symcon/symcon:stable

Hallo Ringo,

für mich lag die Lösung in der Netzwerkeinstellung. Ich habe Anfangs es auch mit NAT versucht, hatte aber diverse Fehler und Port-Kollisionen. Seither arbeite ich immer mit Bridge. Damit bekomme ich eine eigene IP-Adresse die ich als statisch einstelle. Das hat bei mir alle Netzwerkprobleme und Fehlermeldungen eliminiert. Sonst läuft der Docker mit der gleichen IP Adresse wie das NAS (QNAP). Dabei kann es dann zu Kollisionen kommen. Sobald man aber den Docker auf eine eigene statische IP setzt ist das kein Thema mehr.
Die Docker kann man über das QNAP Frontend sehr gut einstellen. Es gibt dort eigentlich alle Optionen, die man auch mit dem Docker Befehl unter SSH nutzen kann - nur etwas komfortabler.
Ich habe den IPSymcon Docker daher anders eingerichtet als bei Symcon beschrieben - nicht NAT sondern BRIDGE mit statischer IP.

Ich hoffe das hilft etwas
Klaus

Danke Klaus, ich habe gerade festgestellt das wenn ich den Container im SSH anlege ist dieser nicht dauerhaft in der Container Station erzeugt. Das bedeuted, stoppe ich den Container ist dieser wieder weg.

Hier ist eine gute Einführung: https://jaxenter.de/einfuehrung-docker-tutorial-container-61528

Das mit der Bridge leuchtet mir ein und das konnte ich auch in Container Dienst komfortable einstellen. Was sich mich nicht erschließt, wie ich im ONAP Containerdienst die Einstellung --privileged -v /dev/ttyACM0:/dev/ttyACM oder das Ordner Mapping -v /dev/ttyUSB0:/dev/ttyUSB0 einstellen kann. Finde keine Funktion die das hergibt.

Findest du unter Gerät in der QNAP Oberfläche.

Danke Ralf, das denke ich mir ja. Folgendes finde ich dort.

Ich habe dann auch TTY gewählt, bekomme aber in symcon folgenden Fehler.

Hallo, ich habe jetzt noch die Idee die USB Ports mit Virtualhere einzubinden. Ich habe aber keine Ahnung wie ich den Client in den Symcon Docker bekommen.

Grüße
Ringo

Siehe Virtual Here Client in Docker | VirtualHere

Der Weg wäre hier einen vom offiziellen Container eigenen abgeleiteten Docker Container zu erstellen, der den VHClient mit beinhaltet.

Bei mir funktionierte das mit vhclient_x86-64 aber nicht, da der vhclient ein Kernel-Modul vorraussetzt, das ich in Docker auf meiner Synology nicht zum Laufen bekommen habe

Hallo, wie kann ich denn ein HID device im Docker mappen?

Grüße, cerberus

Servus,

jetzt ist ja gerade IPS 5.1 raus gekommen.
Ich habe momentan noch IPS 5.0 in einem Docker Container auf einer Synology zu laufen.

Wie bekomme ich das jetzt genau aktualisiert ? Bei Windows ging das ja ganz einfach über den TrayManager aber wie geht das jetzt GENAU bei Docker auf einer Synology ?

Moin,

so mache ich es immer (wenn man kein Portainer nutzt):

  1. Alten Container stoppen

  1. Neue Version runterladen

  1. Per SSH nun den Container erstellen / starten (Pfade anpassen und meinen USB Mount entfernen)
sudo docker run --name symcon_5.1.3121 --net="host" -d -v /volume1/docker/symconBETA/data:/var/lib/symcon -v /volume1/docker/symconBETA/log:/var/log/symcon -v /volume1/docker/symconBETA/:/root --privileged -v /dev/ttyACM0:/dev/ttyACM0 symcon/symcon:5.1-3121

Sieht dann so aus:

Wenn alles reibungslos läuft alten Container löschen.


Falls du ein USB Device meinst… schau mal oben mein SSH Command.
Speziell:

-v /dev/ttyACM0:/dev/ttyACM0

Sieht in der Oberfläche so aus:

Müssen da keine Daten konvertiert werden ?
–net=„host“ bedeutet das die Ports direkt durch gereicht werden oder ? (so habe ich es auch momentan)

Meine Paths sind

/volume1/docker/IPS-Stable
/volume1/docker/IPS-Stable/Data
/volume1/docker/IPS-Stable/Log

dann müsste der Code ja so aussehen

sudo docker run --name symcon_5.1.3121 --net="host" -d -v /volume1/docker/IPS-Stable/data:/var/lib/symcon -v /volume1/docker/IPS-Stable/log:/var/log/symcon -v /volume1/docker/IPS-Stable/:/root --privileged -v /dev/ttyACM0:/dev/ttyACM0 symcon/symcon:5.1-3121

Nur was muss da am Ende jetzt alles weg wenn man mit USB nichts extra eingerichtet hat ?

Und kann ich dann den alten Container wirklich gefahrlos löschen ? Weil wenn ich das mache dann löscht er ja auch den Inhalt vom Container innerhalb der Verzeichnisse auf der Platte ?

Du musst nur die Pfade auf deine ändern und das hier entfernen

-v /dev/ttyACM0:/dev/ttyACM0

Wenn du den Container unter Docker löscht, werden keine Ordner auf deinem Laufwerk gelöscht zu denen du nur verlinkt hast.
Das sind nur „Links“ bzw. werden die Ordner beim starten des Containers gemountet.
Du kannst ja natürlich zur Sicherheit mal ein Backup machen falls du wieder auf die alte Version zurück möchtest.

Du könntest auch einfach die Ordner alle kopieren und in einen neuen „SYMCON_NEU“ Ordner packen auf den du dann die Pfade entsprechend korrigierst.

z.B.

sudo docker run --name symcon_5.1.3121 --net="host" -d -v /volume1/docker/SYMCON_NEU/data:/var/lib/symcon -v /volume1/docker/SYMCON_NEU/log:/var/log/symcon -v /volume1/docker/SYMCON_NEU/:/root --privileged  symcon/symcon:5.1-3121

THX nochmal, funktioniert alles inzwischen :slight_smile: