Hi jentz1986
benutzt Du immer noch das develop image 1.10 ? https://knx-user-forum.de/forum/supp...22#post1960622
ich habe versucht, von deinem Master-Image auf das Develop-Image umzusteigen, aber leider hat es nicht geklappt. Du hattest erwähnt, dass Du einige Pfad-Änderungen vornehmen musstest. Könntest Du bitte kurz erläutern, welche Anpassungen genau notwendig sind, damit das Develop-Image genauso reibungslos läuft wie dein Master-Image?
Vielen Dank im Voraus für deine Hilfe – ich bin sehr begeistert von deinem Setup!
Liebe Grüße,
Ankündigung
Einklappen
Keine Ankündigung bisher.
alternatives Docker Image
Einklappen
X
-
Ach ich Honk: in Deiner plugin.yaml muss natürlich 127.0.0.1 als IP des KNXD rein. 127.0.0.1 = das lokale IP Interface, was durch Network= host in beiden Containern der Host selbst ist und dadurch passt.
SHNG soll sich ja mit KNXD verbinden und nicht mit dem KNX IP Interface.
Einen Kommentar schreiben:
-
Wie Host Server ist verbunden? Versuchst Du auf zwei Ebenen einen KNXD zu betreiben? Also einen auf dem Host und einen in Docker, wo der KNXD dann im Docker wieder so tut, als wäre er auf dem Host? Ich bin gerade ein bisschen lost.
Das Schwärzen der IPs ist nun auch nicht gerade hilfreich. Ich nehme an Du hast ein /24 Netz, also irgendwas 192.168.178.x oder 192.168.2.x dann lass bitte die letzte Zahl sichtbar, damit man weiß was da womit reden will, bzw. redet. Wenn Du was komplizierteres hast (/23 oder größer) muss man halt entsprechend mehr sehen.
Der KNXD sagt im übrigen auch: „Link down, terminating.“ so wie „kein Kabel drin, ich schalt’ ab“. Das ist wild. Das ist übrigens schon lange keine Frage mehr vom SmartHomeNG Docker Container. Der startet und verbindet sich mit dem KNXD, bzw. eben nicht, da der KNXD sich abgeschaltet hat.
Hast Du auf dem Host noch andere Sachen laufen, die potenziell mit dem KNXD kollidieren?
ich muss ja gestehen, dass ich froh war, als ich den KNXD am laufen hatte. Das Ding ist echt nicht leicht. Wenn der Tag mehr Stunden hätte, oder nicht so viel Kram anstehen würde, hätte ich gern die direkte KNX Verbindung in Python implementiert - ohne KNXD. Hätte hätte, hilft Dir auch nicht. 😁
Einen Kommentar schreiben:
-
Hey jentz1986,
vielen dank für Deine Hilfe. Ich denke ich bin schon um einiges Näher dran.
Ich sehe, dass mein Host Server nun mit dem KNX Interface verbunden ist.
image.png
jedoch im log scheint es als könnte er sich nicht verbinden und bricht nach paar versuchen ab.
mein docker compose file
Code:services: shng: build: context: . dockerfile: Dockerfile restart: "unless-stopped" volumes: - ./volumes:/mnt network_mode: "host" smartvisu: image: richarvey/nginx-php-fpm:1.10.3 restart: "unless-stopped" depends_on: - shng volumes: - ./volumes/html:/var/www/html/ network_mode: "host" knxd: image: welteki/knxd:latest container_name: knxd user: "1000:1000" command: knxd /knxd/knxd.ini volumes: - ./volumes/knxd:/knxd restart: always network_mode: "host"
knxd.ini
Code:[M.debug] error-level = 0x9 trace-mask = 0x0 [M.cache] max-size=2000 [A.tcp] server = knxd_tcp port = 6720 [B.ipt] driver = ipt filters = F.pace ip-address = ip to knx interface [F.pace] delay = 30 filter = pace [main] addr = 0.0.1 debug = M.debug client-addrs=0.0.2:8 cache = M.cache connections = A.tcp,B.ipt background = false
plugin.yaml
Code:knx: plugin_name: knx provider: knxd host: ip to knx interface busmonitor: logger enable_stats: true log_own_packets: true
log from docker
Code:knxd | I00000131: [ 1:main] 0.14.56.2: knxd /knxd/knxd.ini knxd | N00000127: [12:F.pace] The 'pace' filter without a queue acts globally. knxd | I00000129: [ 1:main] Connected: cfg:B.ipt. knxd | I00000129: [ 1:main] Connected: cfg:A.tcp. knxd | I00000129: [ 1:main] Connected: cfg:M.cache.
log in smarthomeNG backendCode:knxd | F00000105: [10:B.ipt] Link down, terminating knxd | N00000128: [ 1:main] Shutting down. knxd exited with code 1
Code:2024-11-15 14:44:19 WARNING lib.network (plugins.knx_192.168.33.42:6720) TCP connection failed 1/5 times, last error was: [Errno 111] Connection refused 2024-11-15 14:44:24 WARNING lib.network (plugins.knx_ip to knx interface:6720) TCP connection failed 2/5 times, last error was: [Errno 111] Connection refused 2024-11-15 14:44:29 WARNING lib.network (plugins.knx_192.168.33.42:6720) TCP connection failed 3/5 times, last error was: [Errno 111] Connection refused 2024-11-15 14:44:34 WARNING lib.network (plugins.knx_ip to knx interface:6720) TCP connection failed 4/5 times, last error was: [Errno 111] Connection refused 2024-11-15 14:44:39 WARNING lib.network (plugins.knx_ip to knx interface:6720) TCP connection failed 5/5 times, last error was: [Errno 111] Connection refused
fällt Dir irgendwas auf was ich falsch eingestellt habe?
Einen Kommentar schreiben:
-
Ich nutze das nicht, sondern erstelle den Kram über Terraform und Gitlab Pipelines.
Die knxd.ini wird dabei dynamisch zusammengestellt. Sorry, etwas komplexer.
Aber das wäre ja einfach adaptierbar. Ein knxd.ini in dein ./volumes/knxd/ ablegen und dann das command auf „knxd /knxd/knxd.ini“ ändern.
knxd.ini:
Das ist ein IP-Tunnel zum Interface auf 192.168.149.3, da muss natürlich eine andere IP, rein.PHP-Code:[main]
addr = 0.0.20
debug = M.debug
client-addrs=0.0.21:6
cache = M.cache
connections = A.tcp,B.ipt
background = false
[M.debug]
error-level = 0x9
trace-mask = 0x0
[M.cache]
max-size=2000
[A.tcp]
server = knxd_tcp
port = 6720
[B.ipt]
driver = ipt
filters = F.pace
ip-address = 192.168.149.3
[F.pace]
filter = pace
delay = 30
Die physikalischen Adressen musst du auf deine Umgebung anpassen.Zuletzt geändert von jentz1986; 14.11.2024, 23:46.
Einen Kommentar schreiben:
-
Danke Euch zwei.
jentz1986 kannst Du mit mir dein docker compose file teilen, bitte?
habe es so probiert aber ohne ErfolgCode:knxd: image: welteki/knxd:latest container_name: knxd command: knxd -e 0.0.1 -E 0.0.2:8 -c -b ipt:1xxx.xxx.xx.xx volumes: - ./volumes/knxd:/knxd restart: always
Einen Kommentar schreiben:
-
Ich nutze schon länger den knxd direkt in Debian, ohne Docker.
Einen Kommentar schreiben:
-
Auch wenn ich henfris Arbeit sehr schätze nutze ich dieses hier: welteki/knxd:latest
Dort kann man eine wunderbare knxd.ini reinplatzieren und dann drehts.
weiß nixht, ob das jetzt hilft.
Einen Kommentar schreiben:
-
Hi henfri
ist das das knxd docker image das Du verwendest?
irgendwie krieg ich es nicht hin - und wollte nur kurz bei Dir erfragen ob dies das richtige image ist bevor ich hier noch Wochen damit verbringeCode:knxd: image: henfri/knxd network_mode: "host" command: knxd -e 0.0.1 -E 0.0.2:8 -c -b ipt:xxx.xxx.xx.xx restart: always
schaut so aus als wäre mein knx IP interface noch mit meinem alten server verbunden - habe es jedoch abgeschaltetCode:! smartvisu Published ports are discarded when using host network mode 0.0s Attaching to knxd-1, shng-1, smartvisu-1 knxd-1 | I only have one interface. Nothing to do. Giving up. shng-1 | SHNG-PREPAIR: Prepare Volumes knxd-1 exited with code 1
Code:sudo systemctl stop knxd.socket sudo systemctl stop knxd.service
Einen Kommentar schreiben:
-
Ich habe das Problem auch mit dem Update von meiner Heiminstallation von Bullseye auf Bookworm. Dort mussten ja auch alle Python Packages neu installiert werden. Ich habe daraufhin Requirements im Develop für das websocket Modul angepasst. Breaking changes sind immer ärgerlich :-(
Einen Kommentar schreiben:
-
Mein Flatcar hat sich heute geupdatet und danach lag mein SmartVisu 3.4 bzw. Smarthome 1.10 flach.
Grund ist ein Breaking Change in der Websockets library von version 12 nach 14.1 (ich weiß nicht genau welcher Versionswechsel, aber wahrscheinlich der nach 14.0, von vor vier Tagen, siehe hier: https://websockets.readthedocs.io/en...changelog.html)PHP-Code:> TypeError: Websocket.handle_new_connection() missing 1 required positional argument: 'path'
2024-11-13 16:38:17 ERROR websockets.server connection handler failed
> Traceback (most recent call last):
> File "/home/smarthome/.local/lib/python3.10/site-packages/websockets/asyncio/server.py", line 373, in conn_handler
> await self.handler(connection)
Ich habe meine Umgebung wieder ans laufen bekommen indem ich in der modules/websocket/requirements.txt die Version auf 12.0 festgelegt habe und den Container neugestartet habe. Dazu habe ich die Zeile so umformuliert: websockets==12.0
FYI Msinn / Onkelandy
- Likes 1
Einen Kommentar schreiben:
-
Hi Hendrik,
hab es endlich zum Laufen bekommen. Wie gesagt bin noch an meinen ersten docker Geh-Versuche, deshalb verzeiht mir meine grünen Ohren. Die Ports waren nur im internen Netzwerk zugänglich. Wenn ich jetzt das Netzwerk bridge siehe unten funktioniert es
(funktioniert nicht)
(funktioniert)Code:networks: shng-net: internal: true
(funktioniert)Code:networks: shng-net: internal: false
Vielen Dank Hendrik für Deine Hilfe.Code:networks: shng-net: driver: bridge
Jetzt versuche ich mich Mal ran das ganze zu konfigurieren und weitere container einzupflegen (zB knxd)
Einen Kommentar schreiben:
-
Hi,
ich weiß nicht ob das hier passt. Sonst einfach ignorieren.
Ich hatte mal von henfri abgeforkt und etwas gefixt. Ich nutze jetzt den hier:
https://github.com/AAPohl/docker_smarthomeNG
PR zurück habe ich nicht gestellt, weil doch einiges noch gebastelt ist. Insbesondere der Workflow. War ein Versuch, mal zu schauen, ob der Container hochfährt.
Einen Kommentar schreiben:


Einen Kommentar schreiben: