Offizielles FHEM Docker Basis Image für verschiedene Plattformen

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

Vorheriges Thema - Nächstes Thema

synci

Geniale Idee :-)

Funktioniert bestens, hatte zuerst "own_sudo" immer im FHEM Verzeichnis abgelegt, dort werden jedoch die Berechtigungen immer überschrieben. :-X
Dann funktioniert das ganze nicht wie Du schon vermutet hast.
Nun liegt das File auf meinem Host eine Ebene weiter vorne und behält die Berechtigungen "root/root".

Vielen lieben Dank !!!

ch.eick

Moin,

ich habe da auch noch eine Anfaenger Frage in die gleiche Richtung.
Wie kann ich nachinstallierte python Pakete erhalten, oder diese jeweils neu nachinstallieren?

Gruss
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

kadettilac89

Zitat von: ch.eick am 31 Dezember 2019, 08:47:25
Moin,

ich habe da auch noch eine Anfaenger Frage in die gleiche Richtung.
Wie kann ich nachinstallierte python Pakete erhalten, oder diese jeweils neu nachinstallieren?

Gruss
   Christian

https://github.com/fhem/fhem-docker#add-custom-packages

ch.eick

#648
Scharm und Schande ueber mich.
Entschuldigt bitte das Ueberlesen, es ist glaube ich zuviel Aenderung auf einmal....

gilt das auch fuer pip3 packages?

-e PIP_PKGS="package1 package2"

Gruss
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

kadettilac89

Zitat von: ch.eick am 31 Dezember 2019, 11:54:08
Scharm und Schande ueber mich.
Entschuldigt bitte das Ueberlesen, es ist glaube ich zuviel Aenderung auf einmal....

gilt das auch fuer pip3 packages?

-e PIP_PKGS="package1 package2"

Gruss
   Christian

Im Dockerfile wird mit python3 gearbeitet, ich gehe davon habe es aber nicht im Einsatz ... einfach mal testen?


# Add Python app layer
RUN if [ "${PIP_PKGS}" != "" ] || [ "${IMAGE_LAYER_PYTHON}" != "0" ] || [ "${IMAGE_LAYER_PYTHON_EXT}" != "0" ]; then \
      LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get update \
      && LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get install -qqy --no-install-recommends \
          libinline-python-perl \
          python3 \
          python3-dev \
          python3-pip \
          python3-setuptools \
          python3-wheel \
      && if [ "${PIP_PKGS}" != "" ]; then \

Loredo

#650
Zitat von: ch.eick am 31 Dezember 2019, 11:54:08
gilt das auch fuer pip3 packages?


Es gilt sogar nur für Python3 Pakete; Python2 ist deprecated, siehe den 2020 Countdown hier :D
https://pythonclock.org/


Der Korrektheit halber, dies ist der entsprechende Sprungpunkt im Quellcode, nicht der oben zitierte ;-)
https://github.com/fhem/fhem-docker/blob/d43317cc1647baa585f52cec9e9451ed4fc5490d/src/entry.sh#L111-L127
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

ch.eick

Super, danke es klappt.

Und nochmals vielen Dank fuer Eure unermuedliche Hilfe.

Viele Gruesse und einen guten Rutsch ins neue Jahr
       Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Loredo

Weil es gerade in einem Kommentar an anderer Stelle auftauchte:


Eine Homebridge Integration im FHEM Docker Image gibt es bereits. Sie ist auf die bisher von André noch nicht offiziell veröffentlichte Version 2 des Siri Moduls ausgelegt:
https://forum.fhem.de/index.php/topic,97447.0.html


Derzeit muss man das Modul selbst aus dem Forum laden und installieren. Ich weiß leider nicht, wann/ob André plant das Modul einzuchecken. Vermutlich ist das auch aufgrund der ganzen Entwicklungen im letzten Jahr eher zu einem Moving Target geworden. Am besten einmal darüber im anderen Thread (siehe Link oben) philosophieren.
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

justme1968

das problem ist: ich hatte noch keine gute idee wie ich so einfach wie möglich und rückwärtskompatibel den autostart mit mehreren config files bzw. homebridge instanzen verbinden kann.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Lanhydrock

#654
Hallo Julian,

vielen Dank für das tolle Angebot! Installation klappt auf Anhieb und ohne Probleme...

@auch an weitere Mitleser:
Hat zufällig jemand den Docker mit Homebridge auf einem macOS Gerät laufen?

Wir haben Homebridge mit den Docker Tools zum Laufen gebracht, nicht jedoch - wegen bekannter Einschränkung - mit der aktuellen Docker Desktop für Mac Version.
Unter VirtualBox konnte man mit Sebastians genialem Script einen neuen Bridged Adapter erstellen, der dann die Container im lokalen Netz verfügbar gemacht und somit den Discovery von Homebridge ermöglicht hat. Leider hatten wir aber bei dieser Variante dann Probleme mit den Rechten bei der Erstellung des Shared Folders für /opt/fhem.

Danke im voraus für Rückmeldungen.

- FHEMs in VM @ Mac mini & RPi, fhem2fhem
- Homematic, 1wire, Hue & Lightify & Tradfri & Xiaomi & Oblo via zigbee2mqtt/Conbee II, Rademacher DuoFern, Roto i8 & Hunter Ventile via HM-LC-Sw4-DR
- Interdomo GBK (via Siemens ozw672; dank HTTPMOD, lest Post #33765)
- homebridge(-fhem), Grafana, DBLog

hoppel118

Zitat von: justme1968 am 02 Januar 2020, 12:44:39
das problem ist: ich hatte noch keine gute idee wie ich so einfach wie möglich und rückwärtskompatibel den autostart mit mehreren config files bzw. homebridge instanzen verbinden kann.

Hi, ich bin ja einer derjenigen, der mehrere Homebridge Instanzen in Verwendung hat. Seit der Diskussion in dem Siri v2 Thread habe ich hier im Forum in verschiedenen Threads mal etwas genauer darauf geachtet. Es gibt hier einige User, die mehrere Homebridge Instanzen betreiben. Immer mal wieder liest man das. Ich bin damit kein Exot.

Mir stellt sich gerade die Frage, ob man dir das Leben irgendwie einfacher machen könnte, um eine Rückwärtskompatibilität zumindest unter gewissen Voraussetzungen gewährleisten zu können?

Bin momentan noch knapp 2 Wochen im Urlaub. Kann/will an meiner Umgebung während dieser Zeit aber nichts testen. Danach bin ich aber für alles offen. ;)

Können das gern in dem Siri Thread weiter diskutieren.

Gruß Hoppel

Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

Init

Hallo zusammen,

ich habe letzte Tage angefangen mich mit Docker zu beschäftigen und würde gerne mein FHEM auf mein QNAP-NAS als Docker Container umziehen.

Hierzu habe ich folgende docker-compose.yml erzeugt:

version: '2'

services:
    fhem:
        restart: always
        ports:
            - "8083:8083"
            - "7072:7072"
        image: fhem/fhem:latest
        volumes:
            - /share/CE_CACHEDEV1_DATA/Docker/Fhem/volumes/core/:/opt/fhem/
        networks:
            - fhem-network7
        mac_address: AA:F8:5F:95:84:11
        environment:
            FHEM_UID: 1000
            FHEM_GID: 1000
            TIMEOUT: 10
            RESTART: 1
            TELNETPORT: 7072
            TZ: Europe/Berlin
            IMAGE_LAYER_DEV: 1
            CPAN_PKGS: "Frontier::Client MIME::Lite Net::SMTP::SSL MIME::Base64"
networks:
    fhem-network7:
        driver: qnet
        ipam:
          driver: qnet
          options:
            iface: "bond0"


Wenn jetzt der Container fertig erzeugt ist, erhalte ich in FHEM beim Ausführen eines einen subs folgende Meldung:
Can't locate Frontier/Client.pm in @INC (you may need to install the Frontier::Client module) (@INC contains: /opt/fhem ./FHEM/lib ./lib . /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.24.1 /usr/local/share/perl/5.24.1 /usr/lib/x86_64-linux-gnu/perl5/5.24 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.24 /usr/share/perl/5.24 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base ./FHEM) at ./FHEM/99_myUtils.pm line 12.
BEGIN failed--compilation aborted at ./FHEM/99_myUtils.pm line 12.


Im Environment hatte ich aber die benötigten CPAN_PKGS hinzugefügt.

Kann mir jemand auf die Sprünge helfen, was ich ggf. falsch mache?

VG
Marc

Loredo

Wa steht denn im Docker Log für diesen Container?
Gibt es innerhalb des Containers die Datei /pkgs.cpan ? Was steht drin?
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

Init

Hier der Inhalt von / aber leider kein /pkgs.cpan

drwxr-xr-x   2 root root 4096 Nov  9  2018 bin
drwxr-xr-x   2 root root 4096 Jun 26  2018 boot
drwxr-xr-x   5 root root  340 Jan  3 10:37 dev
-rwxr-xr-x   2 root root 7100 Nov  9  2018 entry.sh
drwxr-xr-x   1 root root 4096 Jan  3 10:37 etc
-rwxr-xr-x   2 root root 1897 Nov  9  2018 health-check.sh
drwxr-xr-x   2 root root 4096 Jun 26  2018 home
-rw-r--r--   9 root root 1376 Nov  9  2018 image_info
-rw-r--r--   1 root root    0 Jan  3 10:37 image_info.EMPTY
drwxr-xr-x   9 root root 4096 Nov  9  2018 lib
drwxr-xr-x   2 root root 4096 Nov  9  2018 lib64
drwxr-xr-x   2 root root 4096 Oct 11  2018 media
drwxr-xr-x   2 root root 4096 Oct 11  2018 mnt
drwxr-xr-x   3 root root 4096 Nov  9  2018 opt
dr-xr-xr-x 525 root root    0 Jan  3 10:37 proc
drwx------   2 root root 4096 Nov  9  2018 root
drwxr-xr-x   3 root root 4096 Nov  9  2018 run
drwxr-xr-x   2 root root 4096 Nov  9  2018 sbin
drwxr-xr-x   2 root root 4096 Oct 11  2018 srv
dr-xr-xr-x  12 root root    0 Jan  2 17:27 sys
drwxrwxrwt   2 root root 4096 Nov  9  2018 tmp
drwxr-xr-x  10 root root 4096 Nov  9  2018 usr
drwxr-xr-x   1 root root 4096 Nov  9  2018 var


Wie komme ich an das Docker log? Sorry für dieses Basics  :-(

Loredo

Am einfachsten geht das über Portainer, alternativ so.


Meine Vermutung: Du hast den Container schonmal gestartet gehabt und erst danach CPAN_PKGS gesetzt. Das funktioniert nicht, die Pakete werden nur einmalig beim allerersten Start eines frischen Containers installiert. Du musst also den Container neu erstellen. Das passiert eigentlich automatisch, wenn du was an deinem docker-compose File änderst, aber natürlich musst du dafür trotzdem docker-compose erneut aufrufen. Der Container ändert sich nicht von alleine ;-)
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