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…
Ankündigung
Einklappen
Keine Ankündigung bisher.
alternatives Docker Image
Einklappen
X
-
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:
-
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:- im logfile bekomme ich folgende "Warnung" - glaube aber, dass das so gewollt ist: "WARNING lib.smarthome Using config dir /mnt/conf"
- 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: - "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) - die Uhrzeit im logfile springt um eine Stunde vor zwischen lib.metadata und lib.logic (wird hier die Zeitzone geladen?)
LG - tullstaZuletzt geändert von tullsta; 10.01.2023, 22:33.
Einen Kommentar schreiben:
-
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:
-
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:
-
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:
-
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:
-
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' -> '/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' -> '/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' -> '/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' -> '/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' -> '/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
Ansonsten läuft es erstmal.
Zur Doku: Lade gerne einen Stand hoch. Ich kann ja helfen.
Gruß,
Hendrik
Einen Kommentar schreiben:
-
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:
-
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:
-
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:
-
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
Einen Kommentar schreiben:
-
Zitat von jentz1986 Beitrag anzeigenEDIT: Korrektur: Es werden erst alle gelinkt, und dann alle Verzeichnisse die vom User kommen überschrieben.
Zitat von jentz1986 Beitrag anzeigenDas 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…
Könntest du bitte einmal versuchen, das nachzustellen?
Zitat von jentz1986 Beitrag anzeigenDas mit der fehlenden Anleitung stimmt, das ist ein Problem.
Den alten kann ich dann gerne hinzufügen.
Zitat von jentz1986 Beitrag anzeigendie library ist wohl nicht mit 3.9 kompatibel und es gibt keinen Plugin Maintainer…
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
- Likes 1
Einen Kommentar schreiben:
-
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 anzeigenUnd 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.Zuletzt geändert von jentz1986; 24.10.2022, 18:59.
Einen Kommentar schreiben:
Einen Kommentar schreiben: