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.
    • C
      Chrisham @OliverIO last edited by

      @oliverio Ok, also wieder Schritt für Schritt: erstmal Problem mit KNX-Adapter-Verbindung. Mir ist aufgefallen, dass in der Adapter-Konfig von KNX, beim neu erstellten Container die "lokale iobroker-IP"-Konfig fehlt.
      Wie kann ich die in der Docker-Erstellung konfigurieren, damit das wieder gefunden wird.

      • Vorher (mit bisherigem Container):
        knx-vorher_2.png

      • Nachher (mit neuem Container):
        knx-nachher_2.png

      Glasfaser 1 Reply Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @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

        Bist du sicher das es mit deinem alten Container ging ( Einstellungen sind uns unbekannt ) ,
        denn du hast nur im neuen Container ( bridge mode ) das drin nur

        ports:
              - "8081:8081"
        

        mehr nicht !

        Also ist nur eine Verbindung zum Container mit 8081 ( Admin ioBroker ) vorhanden !

        Oder hast du den alten Container im host mode , dann hast du keine Probleme mit den Portfreigaben ( werden nicht benötigt ) !?

        C 1 Reply Last reply Reply Quote 0
        • 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
                                            • First post
                                              Last post

                                            Support us

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

                                            803
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            129
                                            10445
                                            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