Offizielles FHEM Docker Basis Image für verschiedene Plattformen

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

Vorheriges Thema - Nächstes Thema

GammaTwin

Zitat von: GammaTwin am 21 Januar 2023, 18:24:03
Grüße,

ich habe zum Jahreswechsel von Ubuntu 18 auf 22 gewechselt. Docker wieder in Betrieb genommen und auch fhem/fhem. Lief sehr problemlos :)

Allerdings steigt der Container seitdem häufiger aus, der Container ist dann unhealthy. Die letzte Meldung lautet:
telnetPort: Can't open server port at 7072: Address already in use. Exiting.

Der Container läuft vorher aber tagelang problemlos. Ich habe als Netzwerktyp Host und Brigde probiert.

Der Fehler ist erneut aufgetreten. Ich habe einen Thread dazu erstellt.
https://forum.fhem.de/index.php/topic,132048.0.html

Für Hilfe wäre ich dankbar.

michisa86888

Hallo,
ich befinde mich gerade mitten im Wechsel vom damaligen Image das Cooltux gebaut hat auf aktuelles FHEM Image
Das ganze nun über folgende docker-compose gestartet und läuft auch soweit.
version: '2.3'

networks:
  fhem_net:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 172.27.0.0/28
          gateway: 172.27.0.1
        - subnet: fd00:0:0:0:27::/80
          gateway: fd00:0:0:0:27::1


services:
  # Minimum example w/o any custom environment variables of fhem container
  fhem:
    image: ghcr.io/fhem/fhem/fhem-docker:bullseye
    restart: always
    networks:
      - fhem_net
    ports:
      - "8083:8083"
      - "1883:1883"
    volumes:
      - "/volume1/docker/fhem/:/opt/fhem/"

# Minimum example w/o any custom environment variables of alexa-fhem container
  alexa-fhem:
    image: ghcr.io/fhem/fhem/alexa-fhem:latest
    restart: always
    networks:
     - fhem_net
    ports:
      - "3000:3000"
    volumes:
      - "/volume1/docker/alexa-fhem/:/alexa-fhem/"
    environment:
      ALEXAFHEM_UID: 6062
      ALEXAFHEM_GID: 6062
      TZ: Europe/Berlin

Nur alexa-fhem will nicht starten:
alexaFHEM     stopped

altes Alexa Gerät habe ich gelöscht und neues über
define alexa alexa
attr alexa alexaFHEM-host alexa-fhem
erstellt.

Normal müsste das Alexa-Device doch nun auf grün springen und dann kann ich Alexa mit FHEM neu verbinden oder?

Im alexa.log steht was von
Unknown cipher type '/tmp/alexa-fhem.cfg'

Otto123

#1847
das alexaFHEM     stopped kannst Du vergessen, es gibt ja den Dienst nicht.
Das ist wichtig!
alexaFHEM.ProxyConnection running; SSH connected

Hast Du hier eine config stehen? /volume1/docker/alexa-fhem/
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

michisa86888

Zitat von: Otto123 am 24 Februar 2023, 16:24:59
alexaFHEM.ProxyConnection running; SSH connected
Okay das müsste ein Reading sein oder? Das fehlt aber
Internals:
   CFGFN     
   FUUID      63f8cef4-f33f-487e-8b86-0de27c80269f2a33
   FVERSION   39_alexa.pm:0.238200/2021-02-24
   LAST_START 2023-02-24 16:42:15
   LAST_STOP  2023-02-24 16:42:15
   NAME       alexa
   NOTIFYDEV  global,global:npmjs.*alexa-fhem.*
   NR         205
   NTFY_ORDER 50-alexa
   PARTIAL   
   STARTS     153
   STATE      stopped
   TYPE       alexa
   eventCount 310
   logfile    ./log/alexa-%Y-%m-%d.log
   CoProcess:
     cmdFn      alexa_getCMD
     name       alexaFHEM
     state      stopped
   READINGS:
     2023-02-24 16:42:15   alexaFHEM       stopped
     2023-02-24 15:51:32   alexaFHEM.bearerToken crypt:23000075010820522524770004277727
     2023-02-24 15:51:32   alexaFHEM.skillRegKey crypt:247600050407234e26210f010353712157535103247627544b23030925075b72547179750404232020
   helper:
   hmccu:
Attributes:
   alexaFHEM-config ./alexa-fhem.cfg
   alexaFHEM-host alexa-fhem
   alexaFHEM-log ./log/alexa-%Y-%m-%d.log
   alexaMapping #Characteristic=<name>=<value>,...
On=verb=schalte,valueOn=an;ein,valueOff=aus,valueToggle=um

Brightness=verb=stelle,property=helligkeit,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

Hue=verb=stelle,valuePrefix=auf,values=rot:0;grün:128;blau:200
Hue=verb=färbe,values=rot:0;grün:120;blau:220

Saturation=verb=stelle,property=sättigung,valuePrefix=auf,values=AMAZON.NUMBER
Saturation=verb=sättige,values=AMAZON.NUMBER

TargetPosition=verb=mach,articles=den;die,values=auf:100;zu:0
TargetPosition=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

TargetTemperature=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=grad

Volume:verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

#Weckzeit=verb=stelle,valuePrefix=auf;für,values=AMAZON.TIME,valueSuffix=uhr
   alexaTypes #Type=<alias>[,<alias2>[,...]]
light=licht,lampen
blind=rolladen,rolläden,jalousie,jalousien,rollo,rollos
   devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
   echoRooms  #<deviceId>=<room>

   fhemIntents #IntentName=<sample utterance>
gutenMorgen=guten morgen
guteNacht=gute nacht
   persons    #<personId>=<name>

   stateFormat alexaFHEM


Zitat von: Otto123 am 24 Februar 2023, 16:24:59
Hast Du hier eine config stehen? /volume1/docker/alexa-fhem/
ja dort steht eine config.json und zwei weitere ordner mit .alexa und .ssh

Otto123

was mich wundert: altes Alexa Gerät habe ich gelöscht und neues über ...
Ich musste gar nichts tuns https://forum.fhem.de/index.php/topic,89745.msg1261398.html#msg1261398
Und bei mir gibt es dieses Attribute  attr alexa alexaFHEM-host alexa-fhem gar nicht. Bei mir wurde das alexa-fhem Device voll automatisch erzeugt.

Hat er irgendwie Deine alte alexa-fhem.cfg übernommen?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

michisa86888

#1850
Zitat von: Otto123 am 24 Februar 2023, 17:17:11
was mich wundert: altes Alexa Gerät habe ich gelöscht und neues über ...
Ich musste gar nichts tuns https://forum.fhem.de/index.php/topic,89745.msg1261398.html#msg1261398
Und bei mir gibt es dieses Attribute  attr alexa alexaFHEM-host alexa-fhem gar nicht. Bei mir wurde das alexa-fhem Device voll automatisch erzeugt.

Hat er irgendwie Deine alte alexa-fhem.cfg übernommen?
Das mit dem Attribut steht so im Git, und ein paar Seiten davor hier auch im Thread. Sobald ich dieses Attribut lösche sagt er mir
alexaFHEM   stopped; alexa-fhem not installed. install with 'sudo npm install -g alexa-fhem'.

Die alte alexa-fhem.cfg liegt im Ordner
/volume1/docker/fhem/fhem/alexa-fhem.cfg

Meine config.json sieht so aus, dort habe ich nichts geändert nach Containererstellung:
{
  "alexa": {
    "port": 3000,
    "name": "Alexa",
    "ssl": false,
    "keyFile": "/certs/alexa-fhem.key",
    "certFile": "/certs/alexa-fhem.crt",
    "nat-pmp": "",
    "nat-upnp": false,
    "applicationId": "amzn1.ask.skill.XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX",
    "oauthClientID": "amzn1.application-oa2-client.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
  },
  "sshproxy" : {
    "description" : "FHEM Connector",
    "ssh" : "/usr/bin/ssh"
  },
  "connections": [
    {
      "name": "FHEM",
      "webname": "fhem",
      "filter": "alexaName=..*",
      "uid": "6062",
      "port": "8083",
      "server": "fhem"
    }
  ]
}


Edit:
habe mal in der config.json anstelle des Containernamens die Container-IP von FHEM hinterlegt und nun bekomme ich ein neues Reading:
alexaFHEM.ProxyConnection

error; user homedir writable by group/other ('chmod 755 /alexa-fhem' required)

Otto123

wie gesagt, ich habe neu angefangen und alles wurde automatisch gemacht. Den Eintrag im Reading
alexaFHEM habe ich auch so. Das scheint ok zu sein. Das der attr Eintrag im git steht weiß ich...

Bei mir ist im Pfad fhem (container fhem) diese alexa-fhem.cfg entstanden:
{
   "sshproxy" : {
      "description" : "FHEM Connector",
      "ssh" : "/usr/bin/ssh"
   },
   "connections" : [
      {
         "name" : "FHEM",
         "uid" : 6061,
         "filter" : "alexaName=..*",
         "port" : 8083,
         "server" : "127.0.0.1",
         "webname" : "fhem"
      }
   ]
}
Ich habe an keiner config was geändert.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

michisa86888

Ja die alexa.fhem.cfg habe ich auch so ähnlich im fhem pfad
{
   "connections" : [
      {
         "filter" : "alexaName=..*",
         "port" : 8083,
         "name" : "FHEM",
         "server" : "127.0.0.1",
         "webname" : "fhem",
         "uid" : 6061
      }
   ],
   "sshproxy" : {
      "description" : "FHEM Connector",
      "ssh" : "/usr/bin/ssh"
   }
}


Mal ne blöde Frage? Wie sehe ich ob die Verbindung der beiden container geklappt hat wenn das Device alexa gestoppt ist?
Laut wiki sollten ja 4 Readings auftauchen
Bei mir fehlt eben dieses alexaFHEM.ProxyConnection komplett
Internals:
   FUUID      63f91735-f33f-487e-3cdb-324ae75ec9f534ee
   FVERSION   39_alexa.pm:0.238200/2021-02-24
   LAST_START 2023-02-25 10:11:50
   LAST_STOP  2023-02-25 10:11:50
   NAME       alexa
   NOTIFYDEV  global,global:npmjs.*alexa-fhem.*
   NR         169
   NTFY_ORDER 50-alexa
   PARTIAL   
   STARTS     27
   STATE      stopped
   TYPE       alexa
   active     0
   alexa-fhem version 0.5.64
   eventCount 55
   logfile    ./log/alexa-%Y-%m-%d.log
   CoProcess:
     cmdFn      alexa_getCMD
     name       alexaFHEM
     state      stopped
   READINGS:
     2023-02-25 10:11:50   alexaFHEM       stopped
     2023-02-25 10:03:17   alexaFHEM.ProxyConnection error; user homedir writable by group/other ('chmod 755 /alexa-fhem' required)
     2023-02-24 20:59:49   alexaFHEM.bearerToken crypt:23000075010820522524770004277727
     2023-02-24 20:59:49   alexaFHEM.skillRegKey crypt:247600050407234e26210f010353712157535103247627544b23030925075b72547179750404232020
   helper:
Attributes:
   alexaFHEM-config ./alexa-fhem.cfg
   alexaFHEM-host alexa-fhem
   alexaFHEM-log ./log/alexa-%Y-%m-%d.log
   alexaMapping #Characteristic=<name>=<value>,...
On=verb=schalte,valueOn=an;ein,valueOff=aus,valueToggle=um

Brightness=verb=stelle,property=helligkeit,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

Hue=verb=stelle,valuePrefix=auf,values=rot:0;grün:128;blau:200
Hue=verb=färbe,values=rot:0;grün:120;blau:220

Saturation=verb=stelle,property=sättigung,valuePrefix=auf,values=AMAZON.NUMBER
Saturation=verb=sättige,values=AMAZON.NUMBER

TargetPosition=verb=mach,articles=den;die,values=auf:100;zu:0
TargetPosition=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

TargetTemperature=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=grad

Volume:verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

#Weckzeit=verb=stelle,valuePrefix=auf;für,values=AMAZON.TIME,valueSuffix=uhr
   alexaTypes #Type=<alias>[,<alias2>[,...]]
light=licht,lampen
blind=rolladen,rolläden,jalousie,jalousien,rollo,rollos
   devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
   echoRooms  #<deviceId>=<room>

   fhemIntents #IntentName=<sample utterance>
gutenMorgen=guten morgen
guteNacht=gute nacht
   persons    #<personId>=<name>

   stateFormat alexaFHEM


Sidey

Zitat von: michisa86888 am 25 Februar 2023, 10:12:06
Ja die alexa.fhem.cfg habe ich auch so ähnlich im fhem pfad

Also die alexa-fhem.cfg muss im Alexa-Fhem Container liegen.
Es ist möglich, die gleiche Datei auch im FHEM Container bereitzustellen, aber ausgewertet wird die nur im Alexa-FHEM Container.

Eventuell muss ich was an der Doku im Docker Container Repo anpassen, ich weiss aber gerade nicht genau was.

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Otto123

#1854
ok, damit was sidey sagt kann es ja eigentlich nur ein Problem mit der config im alexa-fhem Container geben. Als Du die manipuliert hast, gab es ja auch eine Fehlermeldung bez. der Rechte.
Wie sieht es "im" Container aus, bei mir so:
docker exec -it alexa-fhem bash
root@36d1bbfb65e9:/alexa-fhem# ls -lha
total 20K
drwxr-xr-x 4 alexa-fhem alexa-fhem 4.0K Feb 17 21:32 .
drwxr-xr-x 1 root       root       4.0K Feb 17 21:32 ..
drwxr-xr-x 2 alexa-fhem alexa-fhem 4.0K Feb 17 21:32 .alexa
lrwxrwxrwx 1 root       root         11 Feb 17 21:32 alexa-fhem.json -> config.json
-rw-r--r-- 1 alexa-fhem alexa-fhem  631 Jan 31 20:07 config.json
drwxr-xr-x 2 alexa-fhem alexa-fhem 4.0K Feb 17 21:32 .ssh
root@36d1bbfb65e9:/alexa-fhem#
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

michisa86888

#1855
Habe die alexa-fhem.cfg mal in den alexa-fhem ordner kopiert.
Die Rechteausgabe gibt folgendes:
root@b15e72cfb8f9:/alexa-fhem# ls -lha
total 12K
drwxrwxrwx 1 alexa-fhem alexa-fhem 100 Feb 25 16:51 .
drwxr-xr-x 1 root       root       336 Feb 24 15:42 ..
drwxrwxrwx 1 alexa-fhem alexa-fhem  22 Feb 25 16:51 .alexa
-rwxrwxrwx 1 alexa-fhem alexa-fhem 310 Feb 25 10:06 alexa-fhem.cfg
lrwxrwxrwx 1 root       root        11 Feb 25 16:51 alexa-fhem.json -> config.json
-rwxrwxrwx 1 alexa-fhem alexa-fhem 637 Feb 24 21:27 config.json
drwxrwxrwx 1 alexa-fhem alexa-fhem 114 Feb 25 16:51 .ssh


Das Rechteproblem habe ich auch wenn ich den server wieder auf fhem zurückstelle in config.json

Otto123

verwirrend - ich meine: eine alexa-fhem.cfg hat im alexa-fhem Container nix zu suchen. dort ist es die alexa-fhem.json -> config.json

Vielleicht solltest Du den alexa-fhem Container löschen, die alexa-fhem.cfg und das alexa Device im fhem Container löschen und einfach nochmal neu starten.
Wie gesagt: bei mir ging alles automatisch und läuft.
Ich weiß nur nicht was mit einer vorhandenen Registrierung beim Vereins Connector passiert? :-\

Ich weiß nicht, ob Deine extra Netzwerkeinstellung funktional ist, ich habe da keine. Docker compose erzeugt die ja auch automatisch.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

michisa86888

#1857
Also habe mal den alexa Container komplett platt gemacht. FHEM alexa device gelöscht und die alexa-fhem.cfg im fhem auch.
Neuer alexa-fhem container erstellt, ohne das extra netzwerk (auch beim FHEM Container entfernt)
Beide Container gestartet, in /fhem taucht nun wieder ohne ein define die alexa-fhem.cfg auf.
Dann define alexa alexa, das alexa-fhem host attribut dazu, bekomme nun aber wieder nicht das ssh Reading auf running
Habe nur die 3 Readings:
alexaFHEM
alexaFHEM.bearerToken
alexaFHEM.skillRegKey

Ich weiss langsam echt nicht weiter, aktuell bleibt nur die Lösung auf den alten FHEM Container zu wechseln dort lief alexa eigentlich problemlos

Was mich ein wenig wundert, eine alexa-fhem.json habe ich nicht, nur die config.json?
Und im alexa log habe ich eigentlich nur die Einträge
Unknown cipher type '/tmp/alexa-fhem.cfg'

Sidey

Zitat von: michisa86888 am 25 Februar 2023, 17:48:11
Neuer alexa-fhem container erstellt, ohne das extra netzwerk (auch beim FHEM Container entfernt)
Beide Container gestartet, in /fhem taucht nun wieder ohne ein define die alexa-fhem.cfg auf.
Dann define alexa alexa, das alexa-fhem host attribut dazu, bekomme nun aber wieder nicht das ssh Reading auf running

Das Attribut alexaFHEM-host kannst Du löschen.

Das Aktuelle FHEM Image hat Version 3 und lautet `ghcr.io/fhem/fhem/fhem-docker:3-bullseye`


Mich würde mal vom alexa-fhem container folgendes interessieren:

- Logmeldungen
- Inhalt der Datei /alexa-fhem/config.json


Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

MadMax-FHEM

Zitat
Ich weiß nur nicht was mit einer vorhandenen Registrierung beim Vereins Connector passiert? :-\

Ohne Docker stecken die Daten in /opt/fhem/.ssh

Wie das bei Docker ist: keine Ahnung.

Bzw. liegen die Daten (auf jeden Fall) dort wo alexa-fhem (also das nodejs Zeugs) läuft...

Aber: deregistrieren und auch Skill deaktivieren und dann einfach "noch mal" sollte helfen (siehe alexa-fhem Connector Wiki oder auch dem Thread dazu)...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)