Ankündigung

Einklappen
Keine Ankündigung bisher.

alternatives Docker Image

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • jentz1986
    antwortet
    Hi Tommi, sorry, deinen Post sehe ich jetzt erst. Bei mir läuft weil ich faul bin gleich eine Armada von Tools (Gitlab orchestriert das). Aber der pragmatische Weg ist, einen Ordner nach mnt/plugins/<hier-dein-plugin-name> zu mounten, oder gleich, wenn du /mnt extern gemountet hast, dort eine unterordner für das Plugin anzulegen (unter plugins natürlich).

    bitte bei Codeänderungen auch den Container durchstarten…

    Einen Kommentar schreiben:


  • beckerth
    antwortet
    Hi zusammen,

    das Image 1.9.3beta0 läuft bei mir auch. Wie kann ich ein neues Plugin erstellen oder an Plugins arbeiten? Am besten auf dem Host?

    Sehr starke Arbeit!

    Danke.

    Grüße
    Tommi

    Einen Kommentar schreiben:


  • tullsta
    antwortet
    Hallo,

    kurzes feedback: der 1.9.3beta0 scheint bei mir zu laufen.
    Hab' jetzt nur im portainer stack das image geaendert und eben ow + visu + knx Kommunikation gechecked.
    Danke fuer die schnelle Hilfe!

    zwei Kommentare noch:
    1. im logfile bekomme ich folgende "Warnung" - glaube aber, dass das so gewollt ist: "WARNING lib.smarthome Using config dir /mnt/conf"
    2. geloest - my bad - typo bei den volumes im portainer script...
      zu dieser Warnung kenne ich den Grund nicht:
      => "WARNING plugins.smartvisu Could not determine version of smartVISU in configured directory {self.smartvisu_dir}"
      koennte aber mit (3) zusammenhaengen:
    3. "ERROR plugins.smartvisu Could not find valid smartVISU directory: /var/www/html/smartvisu"
      => /var/www/html im container smarthome (leer) ist nicht gleich /var/www/html im container smartvisu (git-cloned)
    4. die Uhrzeit im logfile springt um eine Stunde vor zwischen lib.metadata und lib.logic (wird hier die Zeitzone geladen?)

    LG - tullsta
    Zuletzt geändert von tullsta; 10.01.2023, 22:33.

    Einen Kommentar schreiben:


  • jentz1986
    antwortet
    Mit /mnt kümmert sich das Programm in Docker im das anlegen der files. Die einzelnen Folder sind für die Kompatibilität zu henfris Containerdesign. Wenn Du jetzt schon Saschas Container im Einsatz hast, ist das neue /mnt basierte Design wahrscheinlich schon da…

    und ja, das image ist das oben genannte. henfri Läuft 1.9.3beta0 bei Dir auch?

    Falls es bei euch beiden geht wie bei mir und bei meinen Eltern, dann können wir das offiziell bei Dockerhub registrierte Repository füllen.

    Einen Kommentar schreiben:


  • tullsta
    antwortet
    Hallo - danke fuer die schnelle Antwort - dann mache ich das so!

    Denke ich komme ohne Beginners guide einigermassen klar - jedoch noch eine Frage:
    auf der github-Seite (https://github.com/jentz1986/shng-docker) steht ein portainer stack / docker compose-file Beispiel.
    In dem wird jedoch auf anstatt auf "jentz1986/smarthomeng" auf "henfri/smarthome-ng​" verwiesen.
    Einfach ersetzen? (siehe auch post #65)

    Bzgl. volume: vorzugsweise nach /mnt anstatt auf einzelne directories?

    Danke und liebe Gruesse - tullsta

    ​​

    Einen Kommentar schreiben:


  • jentz1986
    antwortet
    Ich verwende jentz1986/smarthomeng:v1.9.3beta0 und wenn ich dazu positives Feedback bekomme, würde ich dass auch umlabeln auf smarthomeng/shng:v1.9.3 ... Mein Stand der Dokue ist auch hochgeladen, aber leider kein "Beginners Guide".

    Einen Kommentar schreiben:


  • tullsta
    antwortet
    Hallo zusammen,

    ich wollte smarthomeNG endlich mal gescheit im docker aufsetzen.
    Vor einigen Monaten hab' ich sagl/shng:full halbwegs ans Laufen bekommen, bevor ich jetzt aber einen neuen Anlauf wage, wollte ich fragen, welches image / weches compose-file ihr empfehlen wuerdet.

    Danke und liebe Gruesse - tullsta

    Einen Kommentar schreiben:


  • henfri
    antwortet
    Hallo,

    vielen Dank!
    Ich habe es getestet. Leider hatte ich meinen Plugins-Ordner noch nach /mnt/plugins gemounted und *zusätzlich* die Plugins einzeln nach /usr/local/smarthome/plugins.

    Das hat zu einem Datenverlust geführt. In meinem Plugins Ordner gab es jetzt folgende struktur:
    /pfad/zu/plugins/alexarc4shng/alexarc4shng
    ​/pfad/zu/plugins/landroid/landroid

    es war also immer nur ein Ordner mit dem Pluginnamen enthalten und alle anderen Dateien waren weg.

    Das Log zeigte:

    Code:
    SHNG-PREPAIR: Prepare Volumes - legacy behavior
    usermod: no changes
    SHNG-PREPAIR: INFO Plugin already mounted here alexarc4shng
    SHNG-PREPAIR: INFO __init__.py did not exist in plugin-folder, so it is now put there
    SHNG-PREPAIR: INFO Overwriting Plugin alexarc4shng
    rm: cannot remove '/usr/local/smarthome/plugins/alexarc4shng': Device or resource busy
    '/mnt/plugins/alexarc4shng' -&gt; '/usr/local/smarthome/plugins/alexarc4shng/alexarc4shng'
    cp: cannot copy a directory, '/mnt/plugins/alexarc4shng', into itself, '/usr/local/smarthome/plugins/alexarc4shng/alexarc4shng'
    SHNG-PREPAIR: INFO Overwriting Plugin influx
    rm: cannot remove '/usr/local/smarthome/plugins/influx': Device or resource busy
    '/mnt/plugins/influx' -&gt; '/usr/local/smarthome/plugins/influx/influx'
    cp: cannot copy a directory, '/mnt/plugins/influx', into itself, '/usr/local/smarthome/plugins/influx/influx'
    SHNG-PREPAIR: INFO Overwriting Plugin landroid
    rm: cannot remove '/usr/local/smarthome/plugins/landroid': Device or resource busy
    '/mnt/plugins/landroid' -&gt; '/usr/local/smarthome/plugins/landroid/landroid'
    cp: cannot copy a directory, '/mnt/plugins/landroid', into itself, '/usr/local/smarthome/plugins/landroid/landroid'
    SHNG-PREPAIR: INFO Overwriting Plugin lohberger
    rm: cannot remove '/usr/local/smarthome/plugins/lohberger': Device or resource busy
    '/mnt/plugins/lohberger' -&gt; '/usr/local/smarthome/plugins/lohberger/lohberger'
    cp: cannot copy a directory, '/mnt/plugins/lohberger', into itself, '/usr/local/smarthome/plugins/lohberger/lohberger'
    SHNG-PREPAIR: INFO Overwriting Plugin my_attribs
    rm: cannot remove '/usr/local/smarthome/plugins/my_attribs': Device or resource busy
    '/mnt/plugins/my_attribs' -&gt; '/usr/local/smarthome/plugins/my_attribs/my_attribs'
    cp: cannot copy a directory, '/mnt/plugins/my_attribs', into itself, '/usr/local/smarthome/plugins/my_attribs/my_attribs'
    SHNG-PREPAIR: INFO Copying Plugin old
    ​
    Gut dass ich ein Backup hatte :-)

    Ansonsten läuft es erstmal.

    Zur Doku: Lade gerne einen Stand hoch. Ich kann ja helfen.

    Gruß,
    Hendrik

    Einen Kommentar schreiben:


  • jentz1986
    antwortet
    Ich habe jetzt einen beta-Container jentz1986/smarthomeng:v1.9.2beta6 erstellt, in dem auch das klassische Mounten von Plugins "so wie früher" möglich ist.

    Ich habe es mit einer Kopie von meinem 1.8.2 Dateisystem was auf henfri/smarthome-ng:v1.8.2c​ lief ausprobiert. Das funktionierte, schmiss nur eine Millionen Fehler, weil ich z.B. das KNX Plugin deaktiviert hatte, damit ich kein Chaos hier habe...

    Die Doku hatte ich zwischendurch mal angefangen aber ich bin noch nicht so weit, dass ich damit zufrieden wäre. Ich muss jetzt aber erstmal die Isolation unserer neuen Dachfenster fertig machen solang das Wetter noch gut ist.

    Einen Kommentar schreiben:


  • henfri
    antwortet
    Danke, das scheint zu klappen.

    Gruß,
    Hendrik

    Einen Kommentar schreiben:


  • jentz1986
    antwortet
    Workaround der jetzt gehen müsste: /srv/dev-disk-by-id-ata-Micron_1100_MTFDDAV256TBN_17501A32891Epart3/dockerconfig/knx/smarthomeNGconfig/plugins/ -> /mnt/plugins (1x für alle Plugins, nicht jedes Plugin separat, oder halt für jedes Plugin - einfach mal probieren)

    Ich bastel aber auch noch was um Plugins im klassischen Verfahren reinzuladen. Das ist dann aber ein neues Image.

    urgs - jetzt hab ich mir das Repo-Mirroring zerschossen. Nee, ich bin einfach feddich... Wochenende!
    Zuletzt geändert von jentz1986; 26.10.2022, 19:46.

    Einen Kommentar schreiben:


  • henfri
    antwortet
    ok, verstehe.

    Ich nutze ja jetzt das beta-image.
    Allerdings ohne meine custom plugins.

    Wie kann ich die jetzt verwenden? Das "nach plugins mounten" führt ja zu o.g. Fehler.
    Hast du eine Idee für einen Workaround?

    Gruß,

    Hendrik

    Einen Kommentar schreiben:


  • jentz1986
    antwortet
    Ich setz mich am Wochenende hin und bereite eine Meckervorlage vor - die kommt als README.md da rein…

    Zum Überschreiben: Sorry zu kurz gesprungen.
    PHP-Code:

      
    for i in "${!PLUGINS_FROM_CUSTOM[@]}"; do
        if [ -
    d $PATH_PLGN_TRGT/${PLUGINS_FROM_CUSTOM[i]} ]; then
          _print INFO Overwriting Plugin 
    ${PLUGINS_FROM_CUSTOM[i]}
          
    rm -rf $PATH_PLGN_TRGT/${PLUGINS_FROM_CUSTOM[i]}
        else
          
    _print INFO Copying Plugin ${PLUGINS_FROM_CUSTOM[i]}
        
    fi
        cp 
    -vr "$PATH_PLGN_USER/${PLUGINS_FROM_CUSTOM[i]}" "$PATH_PLGN_TRGT/${PLUGINS_FROM_CUSTOM[i]}/"
        
    touch $PATH_PLGN_TRGT/${PLUGINS_FROM_CUSTOM[i]}/.from_custom
      done​ 
    man sieht hier zuerst ein rm, und dann ein cp, über das touch kann man nachher im Container nachvollziehen dass das kopieren gelaufen ist.

    Einen Kommentar schreiben:


  • henfri
    antwortet
    Zitat von jentz1986 Beitrag anzeigen
    EDIT: Korrektur: Es werden erst alle gelinkt, und dann alle Verzeichnisse die vom User kommen überschrieben.
    Überschrieben heißt aber, dass die Ordner dann gemischt werden, oder?
    Zitat von jentz1986 Beitrag anzeigen
    Das man von einem Dateisystem (im Container) keinen Link auf ein anderes Dateisystem („draußen“) keinen Link erstellen kann, hat mich auch genervt, ist aber irgendwie logisch wenn man dann die man-pages liest und eine Linux-Limitierung…
    Ja klar. Aber das erklärt ja nicht, warum der ganze Ordner dann fehlt?!
    Könntest du bitte einmal versuchen, das nachzustellen?
    Zitat von jentz1986 Beitrag anzeigen
    Das mit der fehlenden Anleitung stimmt, das ist ein Problem.
    Könntet ihr den neuen Modus bitte einmal dokumentieren?
    Den alten kann ich dann gerne hinzufügen.

    Zitat von jentz1986 Beitrag anzeigen
    die library ist wohl nicht mit 3.9 kompatibel und es gibt keinen Plugin Maintainer…
    ​Es scheint mir aber, als gäbe es von der Lib einen Fork mit anderem Namen.
    Man müsste nur das Plugin umbiegen. Problem ist, dass es scheinbar keinen Tester gibt. Vielleicht gibt es ja auch keinen Bedarf.
    Ich glaube, die Schnittmenge docker-user und zwave-user scheint jedenfalls klein und ich würde keine Rücksicht nehmen, bis jemand "hier" schreit.

    Gruß,
    Hendrik

    Einen Kommentar schreiben:


  • jentz1986
    antwortet
    Sorry, nicht zigbee, sondern ZWave, die library ist wohl nicht mit 3.9 kompatibel und es gibt keinen Plugin Maintainer…

    EDIT: Das war hier in Beitrag #4: https://knx-user-forum.de/forum/supp...10#post1732010

    EDIT:
    Zitat von henfri Beitrag anzeigen
    Und was mir auch gerade auffällt: warum zeigt log nach /mnt/data/log? Das ist nicht abwärtskompatibel zu meinem ursprünglichen Image, denke ich.
    Bin scheinbar doch Handwerker :-) "Das war ich nicht, das war schon so." Siehe: Integrate 1.9.2 release into main, allow integration of user-plugins in an easy way by jentz1986 · Pull Request #9 · smarthomeNG/docker (github.com)​ Da können wir die ganze Source-Code Detail Diskussion führen :-)​
    Zuletzt geändert von jentz1986; 24.10.2022, 18:59.

    Einen Kommentar schreiben:

Lädt...
X