Offizielles FHEM Docker Basis Image für verschiedene Plattformen

Begonnen von Loredo, 28 Juli 2018, 21:24:57

Vorheriges Thema - Nächstes Thema

Holzlenkrad

Ja genau, entweder einmal eine Shell als fhem User in Docker starten und dann:

ssh-copy-id -i ~/.ssh/id_rsa.pub xyz@host.docker.internal

Oder einfach direkt vom Host aus, wie von kadettilac89 vorgeschlagen das Zertifikat aus dem Container raus kopieren:
https://forum.fhem.de/index.php/topic,89745.msg932018.html#msg932018

Im XiaomiBLE Modul trägst du dann unter sshHost einfach nur noch xyz@host.docker.internal ein und fertig.

Loredo

#301
Das ist recht umständlich, weshalb die SSH Public Keys aus DockerImageInfo als Reading direkt aus FHEM auslesbar sind. Das kopiert man auf dem Zielsystem im Benutzerverzeichnis nach ~/.ssh/authorized_keys und gut ist.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

waschbaerbauch

#302
Hallo zusammen,
ich habe noch einmal auf der grünen Wiese angefangen und mit der folgenden docker-compose.yml
# This is an exmaple Docker Compose file to start your own Docker Stack

version: '2.3'

networks:
  net:
    driver: bridge
    # enable_ipv6: true
    ipam:
      driver: default
      config:
        - subnet: 172.27.0.0/24
          gateway: 172.27.0.1
        # - subnet: fd00:0:0:0:27::/80
        #   gateway: fd00:0:0:0:27::1

services:

  # Example to connect USB to the container w/o
  # privileged mode (preferred method)
  fhem:
    image: fhem/fhem:latest
    restart: always
    networks:
      - net
    ports:
      - "8083:8083"
    volumes:
      - "./fhem/:/opt/fhem/"
    devices:
      - "/dev/ttyUSB0:/dev/ttyUSB0"
      - "/dev/ttyUSB1:/dev/ttyUSB1"
      - "/dev/ttyUSB2:/dev/ttyUSB2"
      - "/dev/ttyUSB3:/dev/ttyUSB3"
      - "/dev/ttyUSB4:/dev/ttyUSB4"
    environment:
      FHEM_UID: 6061
      FHEM_GID: 6061
      TIMEOUT: 10
      RESTART: 1
      TELNETPORT: 7072
      TZ: Europe/Berlin
      # CONFIGTYPE: configDB


meinen FHEM Container gestartet. Aber immer wenn ich versuche auf 'configDB' zu wechseln fängt mein Container an zu loopen/restarten.
Hat wer ein Tipp für mich was ich machen muss bzw. was ich verkehrt mache? Ich finde einfach den Weg nicht ...

2019.04.24 17:44:05.648 1: reload: Error:Modul 98_configdb deactivated:
configDB.pm did not return a true value at ./FHEM/98_configdb.pm line 9.
BEGIN failed--compilation aborted at ./FHEM/98_configdb.pm line 9.

2019.04.24 17:44:05.649 0: configDB.pm did not return a true value at ./FHEM/98_configdb.pm line 9.
BEGIN failed--compilation aborted at ./FHEM/98_configdb.pm line 9.

wolfram

#303
Hallo zusammen,

eine kurze Frage: Ich arbeite mit dem aktuellen Docker Image auf meinem Synology NAS 218+ und habe nach Anweisung versucht die 98_Installer.pm https://forum.fhem.de/index.php/topic,98381.45.html in Betrieb zu nehmen - das Modul läuft, aber beim Versuch ein "set fheminstaller statusRequest"  bekomme ich die Fehlermeldung:

E403 Forbidden - passwordless sudo permissions required

Detail:
curl: (23) Failed writing body (843 != 16384)

You may add the following lines to /etc/sudoers.d/fhem:
  fhem ALL=(ALL) NOPASSWD:SETENV: /usr/bin/perl - App\:\:cpanminus


und der state wechselt zu "error 'getCpanVersion' "

Soweit ich das überblicke, sind in der /etc/sudoers.d/fhemdocker die entscheidenden Einträge vorhanden und auch cpanminus ist lt. Konsole die aktuelle Version. Gibt es beim Docker-Image noch etwas spezielles für dieses Modul zu beachten?

Ich hatte das Thema schon im anderen Thread gepostet, aber dort konnte mir offensichtlich niemand helfen. Deshalb hab ich es dort gelöscht und versuche es hier.


Danke für einen Tipp
wolf


Loredo

Zitat von: wolfram am 25 April 2019, 07:36:22
Gibt es beim Docker-Image noch etwas spezielles für dieses Modul zu beachten?


Nein, nichts spezielles. Mir scheint aber trotzdem, dass dein Image nicht aktuell ist. Welche Version du konkret hast, steht im DockerImageInfo Device im Reading "image.version".
Dort sollte am Ende mindestens "_v1.12.0" stehen.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Loredo

#305
Zitat von: waschbaerbauch am 24 April 2019, 17:43:13
meinen FHEM Container gestartet. Aber immer wenn ich versuche auf 'configDB' zu wechseln fängt mein Container an zu loopen/restarten.
Hat wer ein Tipp für mich was ich machen muss bzw. was ich verkehrt mache? Ich finde einfach den Weg nicht ...


Das Image ist aktuell nicht auf configDB optimiert/getestet, da ich es selbst nicht verwende. Ich kenne configDB nicht gut genug um alle Eventualitäten dafür zu kennen.


EDIT: Ich habe einige Hinweise in der README ergänzt
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

wolfram

Danke Loredo für Deine Antwort!

In der Tat steht dort: "5.9-s19223_v1.11.0" ???

Jetzt muss ich mal lesen, wie ich an die neue Version komme - bin ganz frisch auf Docker umgestiegen und muss mich da erstmal reinlesen. Ich war der Meinung, dass beim Neustart des Containers automatisch passiert, ohne dass ich diesen neu herunterladen und neu konfigurieren muss.

Ich geb bescheid, wenn ich es geschafft hab.

Danke nochmal
wolf

wolfram

#307
Erledigt, das Docker Image hat jetzt die Version 5.9-s19245_v1.13.2

Leider bleibt die Fehlermeldung erhalten:

No. Error Code Description
E403 Forbidden - passwordless sudo permissions required

Detail:
sudo: unable to resolve host FHEM1

You may add the following lines to /etc/sudoers.d/fhem:

  fhem ALL=(ALL) NOPASSWD:SETENV: /usr/local/bin/cpanm *
  fhem ALL=(ALL) NOPASSWD:SETENV: /usr/bin/perl - App\:\:cpanminus


Kann ich sonst noch etwas tun?

Danke und liebe Grüße
wolf

Toxano

Hallo zusammen,

ich bin noch ein ziemlicher Anfänger was fhem angeht und das ist hier mein erster post :D Hoffe ihr könnt mir weiterhelfen.
Ich versuche aktuell den MySensors Serial Gateway mit dem Fhem-Docker Image am RPI zum Laufen zu bekommen. Für das Gateway nutze ich den RFM69HW, der über die GPIO Ports des RPI mittels SPI angebunden ist. Bei der Installation bin ich nach der Anleitung siehe: https://www.mysensors.org/build/raspberry vorgegangen und das Gateway funktioniert auch mit der Fhem Installation auf dem Host-System, jedoch nicht mit dem Docker-Image.

Ich nutze bereits einen nano cul über 433mhz und den habe ich problemlos einbinden können, allerdings habe ich dafür die Methode "serial-by-id" verwendet, was hier ja aufgrund der virtuellen Schnittstelle nicht funktioniert, oder?

Für das Docker-Image habe ich noch folgende Anpassungen vorgenommen:

#Hinzufügen des gateways im yaml

        devices:
             - "/dev/ttyMySensorsGateway:/dev/ttyMySensorsGateway"


#Anpassung der Berechtigungen

root@7871765df993:/opt/fhem# ls -la /dev/ttyM*
crw--w---- 1 root tty  136, 1 Apr 25 15:55 /dev/ttyMySensorsGateway
root@7871765df993:/opt/fhem# chmod a+rw /dev/ttyMySensorsGateway
root@7871765df993:/opt/fhem# ls -la /dev/ttyM*
crw-rw-rw- 1 root tty  136, 1 Apr 25 15:55 /dev/ttyMySensorsGateway


Über das Fhem Logfile wird mir beim Versuch eines connects folgende Fehlermeldung angezeigt:

2019.04.25 16:05:27.889 3: Opening MySensorGateway device /dev/ttyMySensorsGateway
2019.04.25 16:05:27.890 1: MySensorGateway: Can't open /dev/ttyMySensorsGateway: Input/output error


Hat jemand eine Idee woran das liegen könnte?
LG

Loredo

#309
Zitat von: wolfram am 25 April 2019, 13:55:42
Kann ich sonst noch etwas tun?

Ich kann das hier leider nicht nachvollziehen. Bei einer Blanko-Installation ist eine Instanz vom Installer direkt mit angelegt und funktioniert hier auch tadellos. Mehr als einen Container zu erstellen und zu starten muss man nicht tun. Wenn das bei dir nicht funktioniert, weiß ich nicht weshalb. Die Eigenheiten von Docker auf Drittsystemen wie auf einem NAS kenne ich nicht.
Startest du denn auch mit einem "leeren" FHEM Container oder übernimmst du eine bestehende FHEM Installation? Ist letzteres der Fall, dann bitte auch vorher ein Update machen.


@Toxano: Mit dem Einbinden von externen Geräten habe ich keine Erfahrung.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

wolfram

Hallo Loredo,

Vielen Dank für deine Unterstützung, aber es ist in der Tat eine ganz frische Installation. Image heruntergeladen, ein paar mount Pfade gesetzt und gestartet. Keine Geräte - blitzte blanke Neuinstallation....


Gesendet von iPhone mit Tapatalk Pro

Loredo

#311
Deine Fehlermeldung von oben ist übrigens unerklärlich, denn "sudo: unable to resolve host FHEM1" bedeutet, dass etwas auf "FHEM1" als Hostnamen zugreifen würde, was der Installer aber nicht tut (ich vermute dein Container heißt so?). Noch seltsamer ist, dass die Meldung von "sudo" kommen soll - völlig unmöglich. Ich habe wirklich keinerlei Idee was da bei dir vorgeht.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

wolfram

Hallo,

also ich konnte den Fehler eingrenzen: Ich hatte vorher über die WebGUI meines NAS das Dockerimage heruntergeladen und in Betrieb genommen.
Nachdem ich mich in die commandozeilen von Docker etwas eingelesen habe, habe ich das über die Shell meines NAS' das Image noch einmal "gepullt" und gestartet und siehe da - der Fehler ist weg!

Wahrscheinlich hat es wirklich etwas mit einer "Spezialität" der GUI des NAS zu tun.....
Das wäre also erledigt - und vielen Dank für die Hilfe.

Eine Kleinigkeit treibt mich aber trotzdem um: Der Container läuft mit der Netzwerkeinstellung "host". So konnte ich auch das Sonos-Modul in Betrieb nehmen. Definiere ich aber nun auch das Calendar-Modul, bekomme ich Fehlermeldungen:

Calendar Kalender_Feiertage: retrieval failed with error message Cant create UDP socket:Invalid argument

ebenso beim Weather-Modul:
ErrorMsg: Cant create UDP socket:Invalid argument

Gibts hierfür noch etwas zu beachten?

Vielen Dank und schöne Grüße
wolf

thotti70

Hi,

kontrolliere einmal bei global den dnsServer (das Attribut).
Da stand bei mir ein falscher Wert drin. Dort darf nur die IP drin stehen. Wenn ich das richtig verstanden habe, wird dieses Attribut beim Neustart des Containers immer wieder neu gesetzt.
Ein Großteil hat funktioniert, aber z.B. Abfragen ins Internet bei httpmod, Kalender usw. gingen nicht.

VG

kotaro

Zitat von: Toxano am 25 April 2019, 16:22:47
Hallo zusammen,

ich bin noch ein ziemlicher Anfänger was fhem angeht und das ist hier mein erster post :D Hoffe ihr könnt mir weiterhelfen.
Ich versuche aktuell den MySensors Serial Gateway mit dem Fhem-Docker Image am RPI zum Laufen zu bekommen. Für das Gateway nutze ich den RFM69HW, der über die GPIO Ports des RPI mittels SPI angebunden ist. Bei der Installation bin ich nach der Anleitung siehe: https://www.mysensors.org/build/raspberry vorgegangen und das Gateway funktioniert auch mit der Fhem Installation auf dem Host-System, jedoch nicht mit dem Docker-Image.

Ich nutze bereits einen nano cul über 433mhz und den habe ich problemlos einbinden können, allerdings habe ich dafür die Methode "serial-by-id" verwendet, was hier ja aufgrund der virtuellen Schnittstelle nicht funktioniert, oder?

Für das Docker-Image habe ich noch folgende Anpassungen vorgenommen:

#Hinzufügen des gateways im yaml

        devices:
             - "/dev/ttyMySensorsGateway:/dev/ttyMySensorsGateway"


#Anpassung der Berechtigungen

root@7871765df993:/opt/fhem# ls -la /dev/ttyM*
crw--w---- 1 root tty  136, 1 Apr 25 15:55 /dev/ttyMySensorsGateway
root@7871765df993:/opt/fhem# chmod a+rw /dev/ttyMySensorsGateway
root@7871765df993:/opt/fhem# ls -la /dev/ttyM*
crw-rw-rw- 1 root tty  136, 1 Apr 25 15:55 /dev/ttyMySensorsGateway


Über das Fhem Logfile wird mir beim Versuch eines connects folgende Fehlermeldung angezeigt:

2019.04.25 16:05:27.889 3: Opening MySensorGateway device /dev/ttyMySensorsGateway
2019.04.25 16:05:27.890 1: MySensorGateway: Can't open /dev/ttyMySensorsGateway: Input/output error


Hat jemand eine Idee woran das liegen könnte?
LG

Einbinden kannst du Geräte wirklich gut über das Volume.. nicht über das device.. es klingt wirklich komisch, aber damit habe ich mein SIGNALduino eingebunden, und kann es entspannt mit Serial-by-id einbinden..

Teste mal und teile mit ob es klappt. ich würde dann @Loredo bitten, vielleicht darauf hinzuweisen...