Offizielles FHEM Docker Basis Image für verschiedene Plattformen

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

Vorheriges Thema - Nächstes Thema

Wernieman

MacVlan hat für den Anfänger den Nachteil, das er denkt eine VM (und keinen Container) zu haben .... habe es selber z.B. nicht in Benutzung und bin definitiv kein Anfänger. Setze persönlich dann lieber ein Proxy davor.

Geht nur nicht, wenn man wirklich, für BroadCase Netzwerke, direkte Hardwarezugriff braucht

Bezüglich eines "fhem-Light-Containers" kann ich Dir zustimmen. Der andere ist einfach nur "too Big".
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

HansDampfHH

#1981
Von fhem-light höre ich das erste mal. Habt ihr eine URL für mich? Würde mir das gerne mal ansehen und schauen was am Ende eingespart wird.
EDIT: Schon gut, habe gesehen, dass es ein Image ist. Mal schauen, ob ich das mal teste.
FHEM Docker, CUL868, Zigbee, CCU2, Jeelink

CoolTux

Was ich gerne einmal ausprobieren würde ist ein Perl Container only und dann mal schauen ob FHEM damit laufen würde.
Einige Linux Systemnahe Module werden dann natürlich nicht mehr gehen. Frage ist halt, braucht man die.

https://hub.docker.com/_/perl
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

HansDampfHH

#1983
@Borkk
"Ja, du bekommst einen neuen ProxyKey und must den Skill neu aktivieren...
Hier hat mir geholfen, das Alexa Modul einmal komplett aus FHEM zu löschen, Fhem neu starten und dann wieder zu installieren."

Also:
- npm uninstall -g alexa-fhem
- in FHEM das alexa-Device entfernt und FHEM neu gestartet
- das Alexa-Device wieder angelegt: define alexa alexa
- den Skill deaktiviert und mit neuem ProxyKey neu aktiviert

Ergebnis im Bild zu sehen. Sieht aus als entferne ich mich immer weiter.
Wo steckt denn mein Problem oder welcher Schritt fehlt mir noch?

Wenn ich alexa-fhem wieder installiere funktioniert es sofort.
FHEM Docker, CUL868, Zigbee, CCU2, Jeelink

Borkk

#1984
Hast du denn Alexa-fhem sauber in einem separaten Container laufen? Baut der Container eine Verbindung zum Fhem auf? Das kannst du im Echtzeit log im Docker ja prima sehen. Und du darfst das Attribut "alexaFHEM-host" nicht setzten, auch wenn es irgendwo so beschrieben steht.

Im Modul steht dann im Reading Alexa_FHEM:
stopped; alexa-fhem not installed. install with 'sudo npm install -g alexa-fhem'.
Das ist zwar nicht schön stört aber nicht.

Ich habe übrigens seit meinem letzten Post, min. ein FHEM Docker Image Update durchgeführt. Nach jedem Neustart lief Alexa einwandfrei, ohne das ich was tun musste. Mit dem im FHEM Image eingebauten Alexa-FHEM gab es immer mal Probleme und es musste meist neu installiert werden. So ist es prima. Es ist grundsätzlich eine gute Idee das FHEM-Minimal Image so schlank wie möglich zu halten.   
Docker@DS220+ FHEM, ConBeeII, Homebridge, Nginx ReverseProxy, ConfigDB, MQTT, NodeRed, InfluxDB, Grafana,
Raspberrymatic@Raspi3: HmIP Akt- /Sensoren, Shelly´s, Tibber Puls, Alexa, ASC, Gardena, Netatmo, E-Paper, FritzBox; Tado°, HOMEMODE, iBeacon, OLED ; ESP32/8266, SwitchBot ...

Borkk

Zitat von: Wernieman am 23 Oktober 2023, 21:42:58MacVlan hat für den Anfänger den Nachteil, das er denkt eine VM (und keinen Container) zu haben .... habe es selber z.B. nicht in Benutzung und bin definitiv kein Anfänger. Setze persönlich dann lieber ein Proxy davor.

Geht nur nicht, wenn man wirklich, für BroadCase Netzwerke, direkte Hardwarezugriff braucht

Bezüglich eines "fhem-Light-Containers" kann ich Dir zustimmen. Der andere ist einfach nur "too Big".

Ich habe MacVlan sauber mit IPv4 und IPv6 konfiguriert und es laufen 18 Container völlig problemlos auf einem Host. Spätestens wenn man Raspberrymatic in den Docker holt braucht man MacVlan. Allerdings ist die Docker Implementierung von Raspberrymatic nicht wirklich schön. Auf der Syno läuft Raspberrymatic in einer VM. (sorry offTopic)

Einen Ngix ReverseProxy habe ich auch davor hängen. Der regelt aber eigentlich nur den Zugriff von aussen mit HTTPS und ClientZertifikaten.   
Docker@DS220+ FHEM, ConBeeII, Homebridge, Nginx ReverseProxy, ConfigDB, MQTT, NodeRed, InfluxDB, Grafana,
Raspberrymatic@Raspi3: HmIP Akt- /Sensoren, Shelly´s, Tibber Puls, Alexa, ASC, Gardena, Netatmo, E-Paper, FritzBox; Tado°, HOMEMODE, iBeacon, OLED ; ESP32/8266, SwitchBot ...

HansDampfHH

#1986
@Borkk
Ich wollte ja stückweise umziehen und erst mal nur alexa-fhem in einem Container nutzen.
Bin nun aber mit fhem und alexa-fhem komplett in Docker umgezogen. Nun funktioniert das ganze Set-Up.

Habe auch macvlan eingerichtet, das BOSE Modul suchte auf bereits belegten UDP Ports. Mit macvlan ist nun auch das gelöst.

Hat noch jemand eine gute Anleitung, wie ich nun aus dem Docker-Container auf die Host-IP komme? Das geht ja mit macvlan von Haus aus nicht.
Aber ich würde gerne an 2 API-Schnittstellen am Host kommen.

Edit:
Habe jetzt erst mal einen Node-Proxy auf meiner Synology laufen. Der API-Call geht also an die Synology, die den Request 1:1 an den "Host" weiterleitet.
Vielleicht nicht das eleganteste, aber reicht.
FHEM Docker, CUL868, Zigbee, CCU2, Jeelink

rallye

Hallo! Ich verwende nun schon längere Zeit das Docker.Image FusionSolar für meine Solaranlage. Soweit läuft es sehr gut, allerdings habe ich einen Bug gefunden der mich ziemlich stört: Das Reading
daily_energy wird anstatt um Mitternacht erst um 1:00 Uhr zurück gesetzt. Da ich die täglichen Daten weiterverwende habe ich um 1:00 Früh bereits z.B. 34kWh produziert. Das stimmt nicht einmal im Sommer, wenn die Sonne schon um 4:30 aufgeht.
Anbei ein Log-Auszug:

2023-11-01_23:58:35 PV_Lohr daily_energy: 34.73
2023-11-01_23:58:35 PV_Lohr grid_phase_b_current: 0.0
2023-11-01_23:58:35 PV_Lohr grid_phase_a_current: 0.0
2023-11-01_23:58:35 PV_Lohr daily_to_grid_energy: 31.9
2023-11-01_23:58:35 PV_Lohr daily_grid_use_energy: 5.3
2023-11-02_00:00:32 PV_Lohr from_grid_power: 0.301
2023-11-02_00:00:32 PV_Lohr to_grid_power: 0
2023-11-02_00:00:32 PV_Lohr electrical_load: 0.301
2023-11-02_00:00:32 PV_Lohr grid_power: 0.301
2023-11-02_00:00:32 PV_Lohr inverter_output_power: 0.0
2023-11-02_00:00:32 PV_Lohr string_output_power: 0.0
2023-11-02_00:00:32 PV_Lohr daily_self_use_ratio: 34.81
2023-11-02_00:00:32 PV_Lohr station: NE=36213689
2023-11-02_00:00:32 PV_Lohr co2_saved: 1797.8607499999998
2023-11-02_00:00:32 PV_Lohr daily_self_use_energy: 2.83
2023-11-02_00:00:32 PV_Lohr daily_self_use_solar_ratio: 8.15
2023-11-02_00:00:32 PV_Lohr daily_use_energy: 8.13
2023-11-02_00:00:32 PV_Lohr grid_connected_time: 2023-07-26 11:10:27
2023-11-02_00:00:32 PV_Lohr installed_capacity: 10.5600
2023-11-02_00:00:32 PV_Lohr total_current_day_energy: 34.73
2023-11-02_00:00:32 PV_Lohr total_current_month_energy: 34.73
2023-11-02_00:00:32 PV_Lohr total_current_year_energy: 3784.97
2023-11-02_00:00:32 PV_Lohr total_lifetime_energy: 3784.97
2023-11-02_00:00:32 PV_Lohr battery_soc: 0
2023-11-02_00:00:32 PV_Lohr battery_power: 0
2023-11-02_00:00:32 PV_Lohr battery_charge_capacity: 0
2023-11-02_00:00:32 PV_Lohr battery_discharge_capacity: 0
2023-11-02_00:00:32 PV_Lohr grid_frequency: 0.0
2023-11-02_00:00:32 PV_Lohr power_factor: 0.0
2023-11-02_00:00:32 PV_Lohr pv1_input_current: 0.0
2023-11-02_00:00:32 PV_Lohr grid_phase_a_voltage: 0.0
2023-11-02_00:00:32 PV_Lohr output_reactive_power: 0.0
2023-11-02_00:00:32 PV_Lohr pv2_input_current: 0.0
2023-11-02_00:00:32 PV_Lohr active_power: 0.0
2023-11-02_00:00:32 PV_Lohr pv2_input_voltage: 0.0
2023-11-02_00:00:32 PV_Lohr mppt_1_dc_cumulative_energy: 1990.84
2023-11-02_00:00:32 PV_Lohr mppt_2_dc_cumulative_energy: 1921.16
2023-11-02_00:00:32 PV_Lohr pv1_input_voltage: 0.0
2023-11-02_00:00:32 PV_Lohr grid_phase_c_current: 0.0
2023-11-02_00:00:32 PV_Lohr grid_phase_c_voltage: 0.0
2023-11-02_00:00:32 PV_Lohr total_input_power: 0.0
2023-11-02_00:00:32 PV_Lohr grid_phase_b_voltage: 0.0
2023-11-02_00:00:32 PV_Lohr daily_energy: 34.73
.
.
.
.
2023-11-02_00:58:36 PV_Lohr daily_energy: 34.73
2023-11-02_00:58:36 PV_Lohr grid_phase_b_current: 0.0
2023-11-02_00:58:36 PV_Lohr grid_phase_a_current: 0.0
2023-11-02_00:58:36 PV_Lohr daily_to_grid_energy: 34.73
2023-11-02_00:58:36 PV_Lohr daily_grid_use_energy: 0.22
2023-11-02_01:00:32 PV_Lohr from_grid_power: 0.411
2023-11-02_01:00:32 PV_Lohr to_grid_power: 0
2023-11-02_01:00:32 PV_Lohr electrical_load: 0.411
2023-11-02_01:00:32 PV_Lohr grid_power: 0.411
2023-11-02_01:00:32 PV_Lohr inverter_output_power: 0.0
2023-11-02_01:00:32 PV_Lohr string_output_power: 0.0
2023-11-02_01:00:32 PV_Lohr daily_self_use_ratio: 0.00
2023-11-02_01:00:32 PV_Lohr station: NE=36213689
2023-11-02_01:00:32 PV_Lohr co2_saved: 1797.8607499999998
2023-11-02_01:00:32 PV_Lohr daily_self_use_energy: 0.0
2023-11-02_01:00:32 PV_Lohr daily_self_use_solar_ratio: --
2023-11-02_01:00:32 PV_Lohr daily_use_energy: 0.24
2023-11-02_01:00:32 PV_Lohr grid_connected_time: 2023-07-26 11:10:27
2023-11-02_01:00:32 PV_Lohr installed_capacity: 10.5600
2023-11-02_01:00:32 PV_Lohr total_current_day_energy: 0.0
2023-11-02_01:00:32 PV_Lohr total_current_month_energy: 34.73
2023-11-02_01:00:32 PV_Lohr total_current_year_energy: 3784.97
2023-11-02_01:00:32 PV_Lohr total_lifetime_energy: 3784.97
2023-11-02_01:00:32 PV_Lohr battery_soc: 0
2023-11-02_01:00:32 PV_Lohr battery_power: 0
2023-11-02_01:00:32 PV_Lohr battery_charge_capacity: 0
2023-11-02_01:00:32 PV_Lohr battery_discharge_capacity: 0
2023-11-02_01:00:32 PV_Lohr grid_frequency: 0.0
2023-11-02_01:00:32 PV_Lohr power_factor: 0.0
2023-11-02_01:00:32 PV_Lohr pv1_input_current: 0.0
2023-11-02_01:00:32 PV_Lohr grid_phase_a_voltage: 0.0
2023-11-02_01:00:32 PV_Lohr output_reactive_power: 0.0
2023-11-02_01:00:32 PV_Lohr pv2_input_current: 0.0
2023-11-02_01:00:32 PV_Lohr active_power: 0.0
2023-11-02_01:00:32 PV_Lohr pv2_input_voltage: 0.0
2023-11-02_01:00:32 PV_Lohr mppt_1_dc_cumulative_energy: 1990.84
2023-11-02_01:00:32 PV_Lohr mppt_2_dc_cumulative_energy: 1921.16
2023-11-02_01:00:32 PV_Lohr pv1_input_voltage: 0.0
2023-11-02_01:00:32 PV_Lohr grid_phase_c_current: 0.0
2023-11-02_01:00:32 PV_Lohr grid_phase_c_voltage: 0.0
2023-11-02_01:00:32 PV_Lohr total_input_power: 0.0
2023-11-02_01:00:32 PV_Lohr grid_phase_b_voltage: 0.0
2023-11-02_01:00:32 PV_Lohr daily_energy: 0.0

Das Problem hat sich mit Umstellung auf die Winterzeit "halbiert", denn in Zeiten der Sommerzeit war das Zurücksetzen immer erst um 2:00. Ich gehe daher stark davon aus, dass irgendwo eine hardcoded Abfrage mit GMT ist.

LG Rallye
RaspiPi v4, HM-LGW, 6x HM-TC-IT-WM-W-EU, 11x HM-CC-RT-DN, 1x HUE Bridge, 4x HUE-RC, 5x HUE White&Color, 15xHUE White, 3xHM-LC-SW1-FM, 1xHM-LC-SW2-FM, 1x ConBeeII, 15x Shelly1, 5xShellyplug, Aquara: 2x Temp-Sensor, 1x Vibrationssensor, 2x Lichtsensor, 19x Tür/Fenstersensor

Otto123

Hallo Rallye,

was liefert denn dies in der FHEM Kommandozeile zurück?

{qx(date)}
Und dazu date in der cmdline vom Docker Host?

Gruß Otto
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

rallye

Hallo Otto, das liefert
Fr 10. Nov 15:45:23 CET 2023und ist die diente Zeit zu meinem Stand-PC, Mobiltelefon usw. Am Docker-Host habe ich 2 Minuten später die Ausgabe
Fri Nov 10 15:47:30 CET 2023
Die Idee hätte ich auch gehabt. doch alle anderen Readings mit "daily" werden um ca. 00:00 Uhr auf 0 gesetzt. Genau wie es sein soll bzw. auch bei daily_energy sein sollte

LG Rallye
RaspiPi v4, HM-LGW, 6x HM-TC-IT-WM-W-EU, 11x HM-CC-RT-DN, 1x HUE Bridge, 4x HUE-RC, 5x HUE White&Color, 15xHUE White, 3xHM-LC-SW1-FM, 1xHM-LC-SW2-FM, 1x ConBeeII, 15x Shelly1, 5xShellyplug, Aquara: 2x Temp-Sensor, 1x Vibrationssensor, 2x Lichtsensor, 19x Tür/Fenstersensor

Otto123

Dann wird es was mit FusionSolar zu tun haben und nicht mit dem fhem Docker Image - oder ich verstehe das nicht :)
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

rallye

Ich nehme an es hat mit der Programmierung des Moduls zu tun. Im Github habe ich im Modul fusionsolar_api.py mehrere "UTC"s gefunden, doch bin kann ich viel zu wenig Python als dass ich einen Fehler lokalisieren könnte. Ich habe aus dem Source-Code zumindest herauslesen können, dass das Reading "daily_energy" irgendwie (im Gegensatz zu vielen anderen Readings) dort nicht vorkommt. Damit bin ich am Ende meines Lateins (bzw. Pythons).
RaspiPi v4, HM-LGW, 6x HM-TC-IT-WM-W-EU, 11x HM-CC-RT-DN, 1x HUE Bridge, 4x HUE-RC, 5x HUE White&Color, 15xHUE White, 3xHM-LC-SW1-FM, 1xHM-LC-SW2-FM, 1x ConBeeII, 15x Shelly1, 5xShellyplug, Aquara: 2x Temp-Sensor, 1x Vibrationssensor, 2x Lichtsensor, 19x Tür/Fenstersensor

volschin

Zitat von: CoolTux am 24 Oktober 2023, 10:24:38Was ich gerne einmal ausprobieren würde ist ein Perl Container only und dann mal schauen ob FHEM damit laufen würde.
Einige Linux Systemnahe Module werden dann natürlich nicht mehr gehen. Frage ist halt, braucht man die.

https://hub.docker.com/_/perl
Das ist allerdings immer noch ein MB-Monster. So geht Perl-Image auch (11 MB).
https://hub.docker.com/r/avastsoftware/alpine-perl/tags

Das Problem ist, dass das Image mit dem reinpressen aller denkbaren Funktionalität riesig wird. Man bräuchte ein Konzept, das jeweils nur die Funktionalitäten in das Image lädt, die wirklich benutzt werden.

S6 init bietet dafür durchaus Ansätze, die z.B. linuxserver.io mit dem Nachladen von Images als Module ganz spannend nutzt.
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

HansDampfHH

Mittlerweile laufen fhem und alexa-fhem ja in separaten Containern. Alles fein.
Beim anlegen von alexa, wird ein Logfile-Attribut gesetzt.
Ist das eigentlich normal, dass das tägliche Logfile (alexa-2023-11-12.log) nun leer ist wenn man alexa-fhem in einem separaten Container laufen lässt?

Ich brauche das nicht zwingend, würde das nur gerne verstehen.

Internals:
   FUUID      65474128-f33f-ca9c-e539783bbd8cbe87
   FVERSION   39_alexa.pm:0.238200/2021-02-24
   NAME       alexa
   NOTIFYDEV  global,global:npmjs.*alexa-fhem.*
   NR         39
   NTFY_ORDER 50-alexa
   STATE      stopped; alexa-fhem not installed. install with 'sudo npm install -g alexa-fhem'.
   TYPE       alexa
   active     0
   alexa-fhem version 0.5.64
   eventCount 5
   logfile    ./log/alexa-%Y-%m-%d.log
   CoProcess:
     cmdFn      alexa_getCMD
     name       alexaFHEM
     state      stopped; alexa-fhem not installed. install with 'sudo npm install -g alexa-fhem'.
   READINGS:
     2023-11-10 12:39:35   alexaFHEM       stopped; alexa-fhem not installed. install with 'sudo npm install -g alexa-fhem'.
     2023-11-12 09:27:55   alexaFHEM.ProxyConnection running; SSH connected
     2023-11-05 08:15:53   alexaFHEM.bearerToken crypt:0570060d22737b767320540d070550
     2023-11-05 08:15:53   alexaFHEM.skillRegKey crypt:01087271570578751c5b200f7004510502520072067423764b0477015c757f7273757653700d020252
   hmccu:
Attributes:
   alexaFHEM-config ./alexa-fhem.cfg
   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
   group      Amazon
   icon       alexa
   persons    #<personId>=<name>
FHEM Docker, CUL868, Zigbee, CCU2, Jeelink

volschin

Na Du loggst ja jetzt vermutlich aus dem anderen Container woanders hin. Oder hast Du einen Volume-Mount mit Log-Umleitung auf diese Datei eingerichtet?
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge