Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. USB in Docker via neuer Container über Compose u.a. andere

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    USB in Docker via neuer Container über Compose u.a. andere

    This topic has been deleted. Only users with topic management privileges can see it.
    • Glasfaser
      Glasfaser @Chrisham last edited by

      @chrisham

      Der Thread Titel " USB Device für IOBroker in Docker " passt jetzt nicht mehr zum weiteren Inhalt !

      C 1 Reply Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @Guest last edited by Glasfaser

        @dp20eic sagte in USB Device für IOBroker in Docker:

        Ich denke, Du musst die "" bei - PACKAGES="ffmpeg lame sox libsox-fmt-mp3 asterisk" wegnehmen.

        richtig

        @Chrisham

        So :

        - PACKAGES=ffmpeg lame sox libsox-fmt-mp3 asterisk
        

        PACKAGES=influxdb2-cli

        EDIT:
        Packages hintereinander !

        @dp20eic sagte in USB Device für IOBroker in Docker:
        nur wenn Du weißt, was Du machst, solltest Du latest beim Image angeben, denn wenn dann die V10 kommt, dann bügelst Du die über Deine V9,

        Sehr guter Hinweis für Ihn 👍

        Marc Berg 1 Reply Last reply Reply Quote 0
        • Marc Berg
          Marc Berg Most Active @Glasfaser last edited by Marc Berg

          @glasfaser sagte in USB Device für IOBroker in Docker:

          So :

          • PACKAGES=ffmpeg lame sox libsox-fmt-mp3 asterisk
          • PACKAGES=influxdb2-cli

          Das muss alles in eine Zeile. Sonst wird nur "influxdb2-cli" installiert.

          PACKAGES=ffmpeg lame sox libsox-fmt-mp3 asterisk influxdb2-cli
          
          Glasfaser C 2 Replies Last reply Reply Quote 1
          • Glasfaser
            Glasfaser @Marc Berg last edited by

            @marc-berg

            Man sollte nicht mal eben schnell was schreiben und kopieren ... danke für den Hinweis !

            1 Reply Last reply Reply Quote 0
            • OliverIO
              OliverIO @Chrisham last edited by

              @chrisham sagte in USB Device für IOBroker in Docker:

              2.) 2 Adapter sind nicht mit Host verbunden: influxdb und seltsamerweise auch mein KNX-Adapter

              für einmal jedem deiner einzelnen container einen networksabschnitt hinzu
              und dann unter allem ebenfalls einen networks abschnitt ohne einrückung.
              darunter schreibst du einen netzwerknamenmit doppelpunkt (wie in meinem beispiel mit iobrokerprod4

              das erzeugt ein neues bridged netzwerk auf welches nur deine container in dieser konfiguration zugriff haben. jeder container ist mit dem servicenamen als hostname (also influxdb und grafana) erreichbar.
              daher musst du im imfluxdb adapter an der stelle wo die ip dransteht einfach nur influxdb reinschreiben.

              zu knx weiß ich nix. schau mal im log ob da drinsteht,warum er nicht startet.

              C 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @Chrisham last edited by

                @chrisham sagte in USB Device für IOBroker in Docker:

                achso: die Lovelace-Visu ist auch nicht erreichbar, obwohl der Adapter grün ist....

                alle im container verwendeten ports, müssen auch in der docker-konfiguration mit notiert werden, sonst werden sie nicht bereitgestellt.

                evtl ist es bei knx genauso, wenn der adapter einen server bereitstellt, dann muss der port auf dem host gemappt werden.

                1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @Chrisham last edited by

                  @chrisham sagte in USB Device für IOBroker in Docker:

                  @chrisham logs im iobroker:
                  log_2023-10-24 02_40_30-Window.png

                  im adapter steht sicherlich localhost drin, da zuvor influxdb direkt mit iobroker zusammen installiert ist.
                  siehe oben, einfach die netzwerkkonfiguration in der docker konfiguration vornehmen und im adapter dann influxdb anstatt localhost eintragen

                  1 Reply Last reply Reply Quote 0
                  • C
                    Chrisham @Glasfaser last edited by

                    @glasfaser Ok, danke. Also, nach meinem Tagwerk, gehts jetzt wieder hier weiter mit der Nachtschicht... 😉
                    Also Network für Container: tatsächlich habe ich mich da im bisherigen Setup gar nicht groß drum gekümmert, weder bzgl. spezieller Config, noch in Bezug auf das tiefere inhaltliche Verständnis, von daher habe ich auch hier noch eine Lernkurve vor mir.

                    • hier mal das bisherige Setup unter Netzwerk (DSM-UI):
                      container-network-config-old.png

                    Es gibt da also sowohl was mit "host" (iobroker), als auch mit "bridge" (portainer) und noch eine spezielle Sache für influx-grafana... (hab ich wohl aus irgendeinem Youtube tutorial so übernommen)

                    • Das neue Setup (über Portainer docker compose) ergibt an gleicher Stelle nun dieses Config:
                      container-network-config-new.png

                    Also meine Fragen:

                    • was bedeutet jeweils bridge oder host?
                    • wie mache ich es denn im neuen Setup sinnvollerweise?

                    Schon mal danke.

                    1 Reply Last reply Reply Quote 0
                    • C
                      Chrisham @Glasfaser last edited by

                      @glasfaser ok, soll ich neuen aufmachen oder umbenennen?

                      Glasfaser 1 Reply Last reply Reply Quote 0
                      • Glasfaser
                        Glasfaser @Chrisham last edited by

                        @chrisham sagte in USB Device für IOBroker in Docker:

                        oder umbenennen?

                        ist ja schon ein Threadtitel :

                        Rundum Sorglos Paket

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          Chrisham @Guest last edited by

                          @dp20eic said in USB Device für IOBroker in Docker:

                          1. nur wenn Du weißt, was Du machst, solltest Du latest beim Image angeben, denn wenn dann die V10 kommt, dann bügelst Du die über Deine V9, nur vielleicht hat sich das Env. verändert, dann fängst Du an zu suchen, bleib erst einmal innerhalb eines Releases.

                          Mein Wissen erweitert sich täglich :), aber ok, werde ich nochmals überlegen...

                          1. ich sehe, gerade nicht, das Du im ioBroker Container das nötige influxDB-cli mit installierst, brauchst Du aber!
                          InfluxDB
                          
                          The following is valid for all supported cpu architectures.
                          You need to run ioBroker Image Version v8.1.0 or greater.
                          
                          To fulfill the prerequisites for running an InfluxDB backup/ restore with ioBroker.backitup adapter you need to add the following packages to your containers environment variable PACKAGES:
                          

                          ok, danke.

                          Ich denke, Du musst die "" bei - PACKAGES="ffmpeg lame sox libsox-fmt-mp3 asterisk" wegnehmen.

                          VG
                          Bernd

                          aha.

                          Vielen Dank.

                          1 Reply Last reply Reply Quote 0
                          • C
                            Chrisham @OliverIO last edited by

                            @oliverio vielen Dank, also so korrekt (schon bei allen services den gleichen netzwerknamen (iobroker-4)?

                            version: '3'
                            services:
                              iobroker:
                                restart: always
                                image: buanet/iobroker:latest
                                container_name: iobroker-4
                                hostname: iobroker-4
                                ports:
                                  - "8081:8081"
                                volumes:
                                  - /volume1/docker/iobroker-Chrisham:/opt/iobroker
                                  - /volume1/docker/userscripts:/opt/userscripts
                                  - /volume1/docker/Backup:/opt/backup/
                                environment:
                                  - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                                  - DEBIAN_FRONTEND=teletype
                                  - LANG=de_DE.UTF-8
                                  - LANGUAGE=de_DE:de
                                  - LC_ALL=de_DE.UTF-8
                                  - SETGID=1000
                                  - SETUID=1000
                                  - TZ=Europe/Berlin
                                  - USBDEVICES=/dev/ttyUSB0
                                  - PACKAGES=ffmpeg lame sox libsox-fmt-mp3 asterisk influxdb2-cli
                                devices:
                                  - /dev/ttyUSB0:/dev/ttyUSB0
                                networks:
                                  iobroker-4:
                              influxdb:
                                restart: always
                                image: influxdb:latest
                                container_name: influxdb-4
                                ports:
                                  - "8086:8086"
                                volumes:
                                  - /volume1/docker/influxdb/config:/etc/influxdb2
                                  - /volume1/docker/influxdb/data:/var/lib/influxdb2
                                environment:
                                  - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                                  - GOSU_VER=1.12
                                  - INFLUXDB_VERSION=2.7.1
                                  - INFLUX_CLI_VERSION=2.7.3
                                  - INFLUX_CONFIGS_PATH=/etc/influxdb2/influx-configs
                                  - INFLUXD_INIT_PORT=8086
                                  - INFLUXD_INIT_PING_ATTEMPTS=600
                                  - DOCKER_INFLUXDB_INIT_CLI_CONFIG_NAME=default
                                  - DOCKER_INFLUXDB_INIT_MODE=setup
                                  - DOCKER_INFLUXDB_INIT_USERNAME=iobroker
                                  - DOCKER_INFLUXDB_INIT_PASSWORD=*1Xs(QD5gY0!B&XHe1_x
                                  - DOCKER_INFLUXDB_INIT_ORG=smarthome
                                  - DOCKER_INFLUXDB_INIT_BUCKET=iobroker
                                networks:
                                  iobroker-4:  
                              grafana:
                                restart: always
                                image: grafana/grafana:latest
                                container_name: grafana-4
                                ports: 
                                  - "3000:3000"
                                volumes:
                                  - /volume1/docker/grafana:/var/lib/grafana
                                  - /volume1/docker/grafana:/var/lib/grafana/plugins
                                environment:
                                  - PATH=/usr/share/grafana/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                                  - GF_PATHS_CONFIG=/etc/grafana/grafana.ini
                                  - GF_PATHS_DATA=/usr/share/grafana
                                  - GF_PATHS_HOME=/usr/share/grafana
                                  - GF_PATHS_LOGS=/var/log/grafana
                                  - GF_PATHS_PLUGINS=/var/lib/grafana/plugins
                                  - GF_PATHS_PROVISIONING=/etc/grafana/provisioning
                                  - GF_AUTH_access enabled=true
                                  - GF_AUTH_org_name=CH_Smart
                                networks:
                                  iobroker-4:
                            networks:
                              dockerMACVLAN:
                                external: true
                              iobroker-4:
                            

                            bei influxdb hatte ich im compose-file nichts mit IP drin, das war nur im DSM-Config, d.h. dann einfach nur den eintrag mit networks...?

                            Container laufen schon, baut aber noch im Hintergrund, bin gespannt...
                            Auf DSM-Ebene habe ich beobachtet, dass sich nun der iobroker-name geändert hat (erklärbar...?):
                            2023-10-24 23_31_25-DS920-Plus - Synology NAS - Brave.png

                            C OliverIO 2 Replies Last reply Reply Quote 0
                            • C
                              Chrisham @Glasfaser last edited by

                              @glasfaser gut so?

                              1 Reply Last reply Reply Quote 0
                              • C
                                Chrisham @Chrisham last edited by

                                @chrisham Gibt Probleme, Grafana container will nicht so recht:

                                
                                2023/10/24 23:27:56,stdout,"You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migrate-to-v51-or-later
                                "
                                2023/10/24 23:27:56,stdout,GF_PATHS_DATA='/usr/share/grafana' is not writable.
                                

                                Das sind exakt die Env-Var/Pfade, die ich bisher beim DSM-Docker-config angegeben habe:
                                2023-10-25 00_04_02-DS920-Plus - Synology NAS - Brave.png

                                Hat sich doch also nichts geändert und das sind doch Pfade innerhalb des Containers.

                                In der Ref (https://grafana.com/docs/grafana/latest/setup-grafana/installation/docker/#migrate-to-v51-or-later) steht noch was drin, dass der Container mit User gestartet werden soll, der ents. Rechte hat:

                                Use bind mounts
                                If you plan to use directories on your host for the database or configuration when running Grafana in Docker, you must start the container with a user that has the permission to access and write to the directory you map.

                                Die werden ja durch Portainer gestartet....
                                In der o.g. Referenz stehen bei dem docker-compose Bsp. gar keine Env-Variablen/Pfade drin, soll ich die auch mal rausnehmen...?

                                Der Weg ist doch etwas beschwerlicher als gedacht, dabei wollte ich doch nur mein USB-Smart-Meter anschließen... 😠

                                C OliverIO 3 Replies Last reply Reply Quote 0
                                • C
                                  Chrisham @Chrisham last edited by

                                  @chrisham Es stimmen andere Dinge noch nicht:

                                  • der "komische" iobroker-Container (heißt aber nur so in DSM) scheint kaputt zu sein, allerdings in Portainer sieht alles ok aus:

                                  • Portainer:
                                    2023-10-25 00_23_48-Portainer _ local - Brave.png

                                  • DSM:
                                    2023-10-25 00_22_52-DS920-Plus - Synology NAS - Brave.png
                                    --> Kann da auch kein Terminal öffnen.

                                  Hmm, bin mal gespannt ob dieses Vorhaben irgendwann noch konvergiert....😧

                                  1 Reply Last reply Reply Quote 0
                                  • OliverIO
                                    OliverIO @Chrisham last edited by OliverIO

                                    @chrisham sagte in USB in Docker via neuer Container über Compose u.a. andere:
                                    diese beiden Zeilen bitte löschen.

                                    das hat mit macvlan zu tun. das hast du nicht

                                    dockerMACVLAN:
                                      external: true
                                    

                                    dann würde ich den bindestrich im netzwerknamen weglassen iobroker-4:
                                    kann funktionieren, weiß ich nicht. bei solchen namen halte ich mich immer an die regel a-z0-9

                                    ansonsten passt das.
                                    du kannst es ja dann selber mal probieren, in dem du die console bspw im iobroker container öffnest (nicht die console auf deinem host system) und dann

                                    ping grafana
                                    

                                    machen. da müsste dann eine ip adresse kommen, aber keine aus deinem normalen lan-adressbereich.. das ist dann die ip unter der grafana innerhalb dieser service definition erreichbar ist. aber wie gesagt. normalerweise musst du dich bei docker nicht um konkrete ip adressen kümmern. das macht docker für dich. du sprichst die services nur über den servicenamen=hostname an

                                    C 1 Reply Last reply Reply Quote 0
                                    • C
                                      Chrisham @OliverIO last edited by

                                      @oliverio ok, danke. baut gerade neuen stack mit:

                                      version: '3'
                                      services:
                                        iobroker:
                                          restart: always
                                          image: buanet/iobroker:latest
                                          container_name: iobroker-6
                                          hostname: iobroker-6
                                          ports:
                                            - "8081:8081"
                                          volumes:
                                            - /volume1/docker/iobroker-Chrisham:/opt/iobroker
                                            - /volume1/docker/userscripts:/opt/userscripts
                                            - /volume1/docker/Backup:/opt/backup/
                                          environment:
                                            - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                                            - DEBIAN_FRONTEND=teletype
                                            - LANG=de_DE.UTF-8
                                            - LANGUAGE=de_DE:de
                                            - LC_ALL=de_DE.UTF-8
                                            - SETGID=1000
                                            - SETUID=1000
                                            - TZ=Europe/Berlin
                                            - USBDEVICES=/dev/ttyUSB0
                                            - PACKAGES=ffmpeg lame sox libsox-fmt-mp3 asterisk influxdb2-cli
                                          devices:
                                            - /dev/ttyUSB0:/dev/ttyUSB0
                                          networks:
                                            iobroker6:
                                        influxdb:
                                          restart: always
                                          image: influxdb:latest
                                          container_name: influxdb-6
                                          ports:
                                            - "8086:8086"
                                          volumes:
                                            - /volume1/docker/influxdb/config:/etc/influxdb2
                                            - /volume1/docker/influxdb/data:/var/lib/influxdb2
                                          environment:
                                            - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                                            - GOSU_VER=1.12
                                            - INFLUXDB_VERSION=2.7.1
                                            - INFLUX_CLI_VERSION=2.7.3
                                            - INFLUX_CONFIGS_PATH=/etc/influxdb2/influx-configs
                                            - INFLUXD_INIT_PORT=8086
                                            - INFLUXD_INIT_PING_ATTEMPTS=600
                                            - DOCKER_INFLUXDB_INIT_CLI_CONFIG_NAME=default
                                            - DOCKER_INFLUXDB_INIT_MODE=setup
                                            - DOCKER_INFLUXDB_INIT_USERNAME=iobroker
                                            - DOCKER_INFLUXDB_INIT_PASSWORD=*1Xs(QD5gY0!B&XHe1_x
                                            - DOCKER_INFLUXDB_INIT_ORG=smarthome
                                            - DOCKER_INFLUXDB_INIT_BUCKET=iobroker
                                          networks:
                                            iobroker6:  
                                        grafana:
                                          restart: always
                                          image: grafana/grafana:latest
                                          container_name: grafana-6
                                          ports: 
                                            - "3000:3000"
                                          volumes:
                                            - /volume1/docker/grafana:/var/lib/grafana
                                            - /volume1/docker/grafana:/var/lib/grafana/plugins
                                          networks:
                                            iobroker6:
                                      networks:
                                        iobroker6:
                                      

                                      Für heute noch diesen Versuch, sonst gehts morgen weiter....

                                      1 Reply Last reply Reply Quote 0
                                      • OliverIO
                                        OliverIO @Chrisham last edited by

                                        @chrisham sagte in USB in Docker via neuer Container über Compose u.a. andere:

                                        Gibt Probleme, Grafana container will nicht so recht

                                        das ist der richtige abschnitt
                                        https://grafana.com/docs/grafana/latest/setup-grafana/installation/docker/#use-bind-mounts-1

                                        das ist eine berechtigungsgeschichte. viele container laufen intern mit root.
                                        das ändert sich aber, so das auch innen, wie es sein sollte mit dedizierten usern gearbeitet wird. diese benötigen allerdings schreibrechte auf dem gastlaufwerk. diese information muss man dem container mitgeben.
                                        füge im grafana abschnitt noch hinzu

                                        user: '0'
                                        

                                        und probiere ob es dann geht.
                                        alternativ
                                        das hier, da weiß ich aber nicht ob shell substitution unter portainer funktioniert.

                                        user: $(id -u)
                                        
                                        C 1 Reply Last reply Reply Quote 0
                                        • C
                                          Chrisham @OliverIO last edited by

                                          @oliverio ok, danke. mach ich morgen dann.
                                          Letzter Versuch mit o.g. Änderungen war leider nicht erfolgreich:

                                          • influx connected noch nicht
                                            (auch asterisk install scheint noch nicht zu funktionieren, jedenfalls kann adapter nicht verbinden, oder wird der linux-proc nur nicht automatisch gestartet...? wobei ich die pakete über container-terminal an der üblichen stelle (/etc/init.d) auch nicht gefunden habe....

                                          2023-10-25 01_10_33-logs - iobroker-6 - Brave.png

                                          Nunja, war heute halt nicht so erfolgreich, muss noch paar h schlafen, morgen gehts weiter, dennoch vielen dank für den stetigen support!

                                          OliverIO 1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @Chrisham last edited by OliverIO

                                            @chrisham sagte in USB in Docker via neuer Container über Compose u.a. andere:

                                            In der o.g. Referenz stehen bei dem docker-compose Bsp. gar keine Env-Variablen/Pfade drin, soll ich die auch mal rausnehmen...?

                                            in der container konfiguration immer so sparsam mit angaben umgehen wie möglich.
                                            normalerweise hat ein container meist default werte, so das ein container einfach mal läuft.
                                            daher nur die angaben hinzufügen, die gemäß doku unbedingt gefordert sind. alles andere kann man erst mal weglassen. erst wenn du merkst, das du da was anderes haben wills, dann kannst du ergänzen.

                                            hier der abschnitt zu den ganzen pfad angaben.
                                            https://grafana.com/docs/grafana/latest/setup-grafana/configure-docker/#default-paths
                                            wenn du da nix änderst, dann musst du da auch nix angeben,
                                            ich mach mir bspw bei jedem container gedanken, was will ich da sichern und wo stehen diese daten. dann schaue ich, wie ich die da herausbekommen.

                                            zum besseren verständnis von docker und dem dateisystem. docker nutzt ein layer dateisystem. jeder darüberliegende layer überdeckt die einzelnen dateien und verzeichnisse des darunterliegenden layers. normalerweise kommt ganz unten der layer mit dem betriebssystem. dann wird darauf die applikation gelegt.
                                            jetzt kommst du und legst darüber nochmal ein named volume oder ein verzeichnis/datei aus deinem dateisystem.
                                            dadurch kannst du bspw einzelne dateien oder ganze verzeichnisse nach aussen legen und die dann wegsichern.
                                            alle daten, die während der laufzeit im container erzeugt werden und nicht in einem volume liegen, sind nach der regeneration des containers wieder weg.
                                            wenn du etwas sichern willst, dann ist sicherlich /var/lib/grafana (data) interessant
                                            wenn du plugins installierst evtl auch den pfad zu den plugins, bin aber in grafana sicht so firm und weiß nicht was in den einzelnen verzeichnissen wirklich etwas abgelegt wird.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            788
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            129
                                            9896
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo