Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. USB in Docker via neuer Container über Compose u.a. andere

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

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

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
129 Beiträge 8 Kommentatoren 16.4k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • C Chrisham

    @oliverio Klar:

    • docker-compose setup (mit neuem asterisk-container):
    version: '3'
    services:
      iobroker:
        network_mode: "host"
        restart: always
        image: buanet/iobroker:latest
        container_name: iobroker-4
        hostname: iobroker-4
        ports:
          - "8081:8081"
          - "3671:3671"
        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=influxdb2-cli
        devices:
          - /dev/ttyUSB0:/dev/ttyUSB0
      asterisk:
        restart: always
        image: andrius/asterisk:latest
        container_name: asterisk-4
        ports: 
          - "5038:5038"
        environment:
          - PACKAGES=ffmpeg lame sox libsox-fmt-mp3
      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
      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
    

    Und im Asterisk-Adapter sieht es dann so aus:
    2023-10-28 10_49_14-Window.png

    Was wäre noch relevant?

    OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von OliverIO
    #83

    @chrisham

    Was steht im Log von ioBroker?
    Funktioniert Asterix?
    Läuft der Container?

    Meine Adapter und Widgets
    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
    Links im Profil

    C 1 Antwort Letzte Antwort
    0
    • OliverIOO OliverIO

      @chrisham

      Was steht im Log von ioBroker?
      Funktioniert Asterix?
      Läuft der Container?

      C Offline
      C Offline
      Chrisham
      schrieb am zuletzt editiert von
      #84

      @oliverio Anbei die Infos.

      • log IOBroker:
        2023-10-28 20_58_33-Window.png

      • Asterisk Funktionalität geht natürlich nicht, d.h. ich kann die Telefonanrufe nicht absetzen
        Das ist konzeptionell so: Blocklyscript --> Asterisk --> Fritzbox --> Telefonanruf

      • Asterisk-Container
        Der läuft, es gibt auch ein längeres Log mit dem Eintrag "Asterisk Ready" am Ende, aber davor auch mit mehreren Warnungen "cel_wqlite3_custom declined to load,... usw"
        Anbei das log-file:
        asterisk-4.csv

      OliverIOO 1 Antwort Letzte Antwort
      0
      • C Chrisham

        @oliverio Anbei die Infos.

        • log IOBroker:
          2023-10-28 20_58_33-Window.png

        • Asterisk Funktionalität geht natürlich nicht, d.h. ich kann die Telefonanrufe nicht absetzen
          Das ist konzeptionell so: Blocklyscript --> Asterisk --> Fritzbox --> Telefonanruf

        • Asterisk-Container
          Der läuft, es gibt auch ein längeres Log mit dem Eintrag "Asterisk Ready" am Ende, aber davor auch mit mehreren Warnungen "cel_wqlite3_custom declined to load,... usw"
          Anbei das log-file:
          asterisk-4.csv

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von OliverIO
        #85

        @chrisham

        ein paar errors sind auch drin. allerdings kann ich nicht bewerten ob das hinnehmbare fehler sind.
        normalerweise ist error, was man korrigieren muss, warning sollte man prüfen, aber stört erstmal das programm nicht. vielleicht hast du ja noch ein logfile vom altern asterix. dann kannst du da mal vergleichen

        aber was du zuerst ausprobieren kannst:
        ich habe gesehen, das hier port 5060 verwendet wird.
        d.h. anstatt 5038 musst du im docker config 5060 eintragen
        und wenn der container neu erstellt wurde dann in der adapterkonfiguration auch 5060

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        C 1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @chrisham

          ein paar errors sind auch drin. allerdings kann ich nicht bewerten ob das hinnehmbare fehler sind.
          normalerweise ist error, was man korrigieren muss, warning sollte man prüfen, aber stört erstmal das programm nicht. vielleicht hast du ja noch ein logfile vom altern asterix. dann kannst du da mal vergleichen

          aber was du zuerst ausprobieren kannst:
          ich habe gesehen, das hier port 5060 verwendet wird.
          d.h. anstatt 5038 musst du im docker config 5060 eintragen
          und wenn der container neu erstellt wurde dann in der adapterkonfiguration auch 5060

          C Offline
          C Offline
          Chrisham
          schrieb am zuletzt editiert von
          #86

          @oliverio said in USB in Docker via neuer Container über Compose u.a. andere:

          @chrisham

          ein paar errors sind auch drin. allerdings kann ich nicht bewerten ob das hinnehmbare fehler sind.
          normalerweise ist error, was man korrigieren muss, warning sollte man prüfen, aber stört erstmal das programm nicht.

          Ja, die Fehler sind für mich auch erstmal etwas kryptisch, wüsste spontan auch nicht, ob die a) relevant sind für das Connection-Problem und b) wie ich sie beseitigen würde, es ist ja erstmal einfach der Standard container erzeugt worden, wenn es da schon Probleme gibt.

          vielleicht hast du ja noch ein logfile vom altern asterix. dann kannst du da mal vergleichen
          Beim alten asterisk, also dem ganz ursprünglichen wo es funktionierte, war es ja so, dass ich das asterisk (und die anderen Linux-Pakete) manuell (über apt-get install asterisk) installierte. Aber diese Option scheint es ja jetzt grundsätzlich nicht mehr zu geben, da das debian-Paket nicht mehr angeboten wird, sonst würde die Installation ja auch über die container-compose erzeugung funktionieren. Also von daher: da habe ich leider kein log-file mehr bzw. bin mir auch nicht sicher, ob es da überhaupt (auf Container-Ebene) einen log-Eintrag für so ein nachträglich installiertes Linux-Paket gegeben hätte.

          aber was du zuerst ausprobieren kannst:
          ich habe gesehen, das hier port 5060 verwendet wird.
          Hmm, ah ok, was meinst du genau mit "... hier port 5060 verwendet wird..."? Also, wo hast du das gelesen, in der Doku vom andrius container? Also da war tatsächlich eine Inkonsistenz meinerseits: in der config, die ich hier gepostet hatte, stand 5038, aber in der portainer-config war schon 5060 eingetragen. Ich habe es dennoch nochmals "from scratch" neu erstellt, leider mit dem gleichen negativen Ergebnis...
          hier nochmals das log-file von diesem versuch:
          asterisk-5 (1).csv

          d.h. anstatt 5038 musst du im docker config 5060 eintragen

          und wenn der container neu erstellt wurde dann in der adapterkonfiguration auch 5060

          In der Adapter-config steht definitiv 5060 drin.

          Noch was anderes (keine Ahnung ob das relevant ist), was mir aufgefallen ist: den asterisk-container zu betreten, einmal über ein Terminal über DSM-GUI klappt auch nicht, siehe Fehlermeldung:
          2023-10-29 16_47_33-DS920-Plus - Synology NAS - Brave.png

          Dann habe ich über cmd-Shell versucht, den Container zu betreten:

          sudo docker exec -u 0 -it c6a9ade9eac7 bash

          Das ging natürlich auch nicht, dafür aber mit
          sudo docker exec -u 0 -it c6a9ade9eac7 sh

          Es gibt also wohl ein bash-script, sondern ein sh-script. Ist aber wohl für das vorliegende Problem irrelevant.
          Trotzdem ist es strange, wie sich dieser container "im innern" präsentiert:
          2023-10-29 17_00_27-Downloads.png

          Normalerweise steht da an der Prompt-Eingabe im Terminal immer der Container-Name:
          2023-10-29 17_01_42-Smart-Home-Automation-IOBroker_1.8.docx - Word.png

          Soll ich vllt. einmal einfach einen anderen (also nicht den andrius ) container-image versuchen für asterisk....?

          Aber zwischendurch mal einfach ein dickes DANKESCHÖN an dich, echt klasse der Support, und mit viel Geduld !!:clap:

          OliverIOO 1 Antwort Letzte Antwort
          0
          • C Chrisham

            @oliverio said in USB in Docker via neuer Container über Compose u.a. andere:

            @chrisham

            ein paar errors sind auch drin. allerdings kann ich nicht bewerten ob das hinnehmbare fehler sind.
            normalerweise ist error, was man korrigieren muss, warning sollte man prüfen, aber stört erstmal das programm nicht.

            Ja, die Fehler sind für mich auch erstmal etwas kryptisch, wüsste spontan auch nicht, ob die a) relevant sind für das Connection-Problem und b) wie ich sie beseitigen würde, es ist ja erstmal einfach der Standard container erzeugt worden, wenn es da schon Probleme gibt.

            vielleicht hast du ja noch ein logfile vom altern asterix. dann kannst du da mal vergleichen
            Beim alten asterisk, also dem ganz ursprünglichen wo es funktionierte, war es ja so, dass ich das asterisk (und die anderen Linux-Pakete) manuell (über apt-get install asterisk) installierte. Aber diese Option scheint es ja jetzt grundsätzlich nicht mehr zu geben, da das debian-Paket nicht mehr angeboten wird, sonst würde die Installation ja auch über die container-compose erzeugung funktionieren. Also von daher: da habe ich leider kein log-file mehr bzw. bin mir auch nicht sicher, ob es da überhaupt (auf Container-Ebene) einen log-Eintrag für so ein nachträglich installiertes Linux-Paket gegeben hätte.

            aber was du zuerst ausprobieren kannst:
            ich habe gesehen, das hier port 5060 verwendet wird.
            Hmm, ah ok, was meinst du genau mit "... hier port 5060 verwendet wird..."? Also, wo hast du das gelesen, in der Doku vom andrius container? Also da war tatsächlich eine Inkonsistenz meinerseits: in der config, die ich hier gepostet hatte, stand 5038, aber in der portainer-config war schon 5060 eingetragen. Ich habe es dennoch nochmals "from scratch" neu erstellt, leider mit dem gleichen negativen Ergebnis...
            hier nochmals das log-file von diesem versuch:
            asterisk-5 (1).csv

            d.h. anstatt 5038 musst du im docker config 5060 eintragen

            und wenn der container neu erstellt wurde dann in der adapterkonfiguration auch 5060

            In der Adapter-config steht definitiv 5060 drin.

            Noch was anderes (keine Ahnung ob das relevant ist), was mir aufgefallen ist: den asterisk-container zu betreten, einmal über ein Terminal über DSM-GUI klappt auch nicht, siehe Fehlermeldung:
            2023-10-29 16_47_33-DS920-Plus - Synology NAS - Brave.png

            Dann habe ich über cmd-Shell versucht, den Container zu betreten:

            sudo docker exec -u 0 -it c6a9ade9eac7 bash

            Das ging natürlich auch nicht, dafür aber mit
            sudo docker exec -u 0 -it c6a9ade9eac7 sh

            Es gibt also wohl ein bash-script, sondern ein sh-script. Ist aber wohl für das vorliegende Problem irrelevant.
            Trotzdem ist es strange, wie sich dieser container "im innern" präsentiert:
            2023-10-29 17_00_27-Downloads.png

            Normalerweise steht da an der Prompt-Eingabe im Terminal immer der Container-Name:
            2023-10-29 17_01_42-Smart-Home-Automation-IOBroker_1.8.docx - Word.png

            Soll ich vllt. einmal einfach einen anderen (also nicht den andrius ) container-image versuchen für asterisk....?

            Aber zwischendurch mal einfach ein dickes DANKESCHÖN an dich, echt klasse der Support, und mit viel Geduld !!:clap:

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von
            #87

            @chrisham

            • port 5060
              oben in der geposteten asterix docker konfiguration stand noch 5038. der ersteller des dockerimages hat innendrin 5060 gewählt. das muss natürlich durchgängig passen. sonst erreichen sich die beiden dienste nie

            • console im container öffnen

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

            Noch was anderes (keine Ahnung ob das relevant ist), was mir aufgefallen ist: den asterisk-container zu betreten, einmal über ein Terminal über DSM-GUI klappt auch nicht, siehe Fehlermeldung

            ja, das hängt immer stark vom container ab. innerhalb des containers läuft ein komplett eigenständiges betriebssystem. da es ja um die eigentliche applikation geht, macht man da nur das mindeste rein was man braucht. beim latest wird alpine als basis betriebssystem genutzt. die bieten momentan so ziemlich das kleinste basis image an und ist für docker super.
            da ist allerdings kein bash drin, sondern ash (wie bei linux üblich gibt es von allem oft mehrere varianten. portainer macht das auch so, das standardmäßig immer /bin/bash wird, dort kann man aber auch /bin/sh auswählen. das wäre eigentlich der richtigere befehl, da sich damit immer das standard shell des betriebssystems öffnet
            auch pakete nachträglich noch installieren (nicht empfohlen, da bei der nächsten regeneration weg) ist bei alpine wieder ein anderer befehl. da muss man dann leider nachschauen

            • innenleben des containers

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

            Trotzdem ist es strange, wie sich dieser container "im innern" präsentiert:

            warum, sieht doch gut aus. ist das standard dateisystem von linux.
            wie oben geschrieben. container ist nix anderes als ein kommplett virtualisiertes betriebssystem, das komplett abgekapselt vom normalen betriebssystem läuft.
            das benötigt natürlich auch sein seine dateistruktur. irgendwo da ist dann asterix auch installiert ( /var/lib/asterix + noch ein paar weitere verwendete verzeichnisse, start ist von /var/sbin/asterix aus)
            die shell datei docker_entrypoint ist das startskript, welches dann docker aufruft, sobald der container meldet, das er läuft. in dem startskript steht dann drin wie die eigentliche anwendung dann gestartet wird.

            • prompt

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

            Normalerweise steht da an der Prompt-Eingabe im Terminal immer der Container-Name:

            bei docker innen drin gibt es kein normalerweise. das ist alles dem container ersteller überlassen. dieser hat dem shell halt bei der erstellung nicht gesagt, wie das prompt aussehen soll. meist legt ein dockercontainer beim start einen eigenen group/user an. auch hier wird eine gruppe und ein user "asterix" angelegt.
            anpassen kannst du das mit
            https://wiki.ubuntuusers.de/Bash/Prompt/#:~:text=Ein persönlicher Prompt kann die,wie mit Farben gearbeitet wird.
            allerdings gilt das für bash. evtl gehen ein paar dinge bei ash da nicht

            wenn dir ein debian basiertes image lieber ist, dann kannst du im dockerkonfigurationsdatei als image anstatt andrius/asterix:latest ein andrius/asterisk:1.4-debian angeben.
            allerdings ist das schon 2 jahre alt. er macht wohl keine debian images mehr.

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            C 1 Antwort Letzte Antwort
            0
            • OliverIOO OliverIO

              @chrisham

              • port 5060
                oben in der geposteten asterix docker konfiguration stand noch 5038. der ersteller des dockerimages hat innendrin 5060 gewählt. das muss natürlich durchgängig passen. sonst erreichen sich die beiden dienste nie

              • console im container öffnen

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

              Noch was anderes (keine Ahnung ob das relevant ist), was mir aufgefallen ist: den asterisk-container zu betreten, einmal über ein Terminal über DSM-GUI klappt auch nicht, siehe Fehlermeldung

              ja, das hängt immer stark vom container ab. innerhalb des containers läuft ein komplett eigenständiges betriebssystem. da es ja um die eigentliche applikation geht, macht man da nur das mindeste rein was man braucht. beim latest wird alpine als basis betriebssystem genutzt. die bieten momentan so ziemlich das kleinste basis image an und ist für docker super.
              da ist allerdings kein bash drin, sondern ash (wie bei linux üblich gibt es von allem oft mehrere varianten. portainer macht das auch so, das standardmäßig immer /bin/bash wird, dort kann man aber auch /bin/sh auswählen. das wäre eigentlich der richtigere befehl, da sich damit immer das standard shell des betriebssystems öffnet
              auch pakete nachträglich noch installieren (nicht empfohlen, da bei der nächsten regeneration weg) ist bei alpine wieder ein anderer befehl. da muss man dann leider nachschauen

              • innenleben des containers

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

              Trotzdem ist es strange, wie sich dieser container "im innern" präsentiert:

              warum, sieht doch gut aus. ist das standard dateisystem von linux.
              wie oben geschrieben. container ist nix anderes als ein kommplett virtualisiertes betriebssystem, das komplett abgekapselt vom normalen betriebssystem läuft.
              das benötigt natürlich auch sein seine dateistruktur. irgendwo da ist dann asterix auch installiert ( /var/lib/asterix + noch ein paar weitere verwendete verzeichnisse, start ist von /var/sbin/asterix aus)
              die shell datei docker_entrypoint ist das startskript, welches dann docker aufruft, sobald der container meldet, das er läuft. in dem startskript steht dann drin wie die eigentliche anwendung dann gestartet wird.

              • prompt

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

              Normalerweise steht da an der Prompt-Eingabe im Terminal immer der Container-Name:

              bei docker innen drin gibt es kein normalerweise. das ist alles dem container ersteller überlassen. dieser hat dem shell halt bei der erstellung nicht gesagt, wie das prompt aussehen soll. meist legt ein dockercontainer beim start einen eigenen group/user an. auch hier wird eine gruppe und ein user "asterix" angelegt.
              anpassen kannst du das mit
              https://wiki.ubuntuusers.de/Bash/Prompt/#:~:text=Ein persönlicher Prompt kann die,wie mit Farben gearbeitet wird.
              allerdings gilt das für bash. evtl gehen ein paar dinge bei ash da nicht

              wenn dir ein debian basiertes image lieber ist, dann kannst du im dockerkonfigurationsdatei als image anstatt andrius/asterix:latest ein andrius/asterisk:1.4-debian angeben.
              allerdings ist das schon 2 jahre alt. er macht wohl keine debian images mehr.

              C Offline
              C Offline
              Chrisham
              schrieb am zuletzt editiert von
              #88

              @oliverio Ok, danke.
              Ich habe jetzt mal noch weiter in den asterisk container reingeschaut, da steht in etc/asterisk/manager.conf das:
              2023-10-29 22_14_46-OpenSSH SSH client.png

              basierend auf welcher Info hast du das: "der ersteller des dockerimages hat innendrin 5060 gewählt."?

              OliverIOO 1 Antwort Letzte Antwort
              0
              • C Chrisham

                @oliverio Ok, danke.
                Ich habe jetzt mal noch weiter in den asterisk container reingeschaut, da steht in etc/asterisk/manager.conf das:
                2023-10-29 22_14_46-OpenSSH SSH client.png

                basierend auf welcher Info hast du das: "der ersteller des dockerimages hat innendrin 5060 gewählt."?

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von OliverIO
                #89

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

                basierend auf welcher Info hast du das: "der ersteller des dockerimages hat innendrin 5060 gewählt."?

                das steht hier. das ist das dockerfile für die alpine version.
                da wird definiert auf welchem basis image das besteht, welche packete installiert werden sollen und was sonst noch eingerichtet werden muss
                https://github.com/andrius/asterisk/blob/ef1c958d45eacfc301b80f8b0de079d43254a02b/alpine/Dockerfile.erb#L29

                aber wie gesagt ich habe keine ahnung welcher port für was ist.
                dann kannst du im docker config mal einfach noch den 5038 dazuschreiben

                5038:5038
                

                alternativ kannst du bei dem asterix container auch mal noch den hostmode aktivieren

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                C 1 Antwort Letzte Antwort
                0
                • OliverIOO OliverIO

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

                  basierend auf welcher Info hast du das: "der ersteller des dockerimages hat innendrin 5060 gewählt."?

                  das steht hier. das ist das dockerfile für die alpine version.
                  da wird definiert auf welchem basis image das besteht, welche packete installiert werden sollen und was sonst noch eingerichtet werden muss
                  https://github.com/andrius/asterisk/blob/ef1c958d45eacfc301b80f8b0de079d43254a02b/alpine/Dockerfile.erb#L29

                  aber wie gesagt ich habe keine ahnung welcher port für was ist.
                  dann kannst du im docker config mal einfach noch den 5038 dazuschreiben

                  5038:5038
                  

                  alternativ kannst du bei dem asterix container auch mal noch den hostmode aktivieren

                  C Offline
                  C Offline
                  Chrisham
                  schrieb am zuletzt editiert von
                  #90

                  @oliverio yep, mit 5038 und hostmode im astersik hat es jetzt geklappt. Also Verbindung zwischen Asterisk-Adapter im IOBroker und dem asterisk-container scheint jetzt wohl zu funktionieren, zumindest der connect error ist weg.
                  Ein kleiner Schritt weiter...

                  Telefonanrufe klappen zwar immer noch nicht, aber das ist jetzt eine innere asterisk-config in verbindung mit der fritzbox-config... muss jetzt da weitersuchen

                  C 1 Antwort Letzte Antwort
                  0
                  • C Chrisham

                    @oliverio yep, mit 5038 und hostmode im astersik hat es jetzt geklappt. Also Verbindung zwischen Asterisk-Adapter im IOBroker und dem asterisk-container scheint jetzt wohl zu funktionieren, zumindest der connect error ist weg.
                    Ein kleiner Schritt weiter...

                    Telefonanrufe klappen zwar immer noch nicht, aber das ist jetzt eine innere asterisk-config in verbindung mit der fritzbox-config... muss jetzt da weitersuchen

                    C Offline
                    C Offline
                    Chrisham
                    schrieb am zuletzt editiert von
                    #91

                    @chrisham , @OliverIO
                    Und parallel dazu muss ich mich gleich noch mit dem nächsten schritt beschäftigen: für einige dieser Container (grafana, asaterisk) muss ich im innern configurations-files neu erstellen bzw. abändern.
                    Nun möchte ich dies in zukunft beim update ja auch nicht immer wieder händisch machen müssen, sondern wenn schon, dann auch gleich über das portainer docker compose verfahren mit erledigen.
                    was ist dazu das vorgehen? Kann man der container erstellung gleich ein script mitgeben, das diese config-file Anpassung mitmacht?

                    OliverIOO 1 Antwort Letzte Antwort
                    0
                    • C Chrisham

                      @chrisham , @OliverIO
                      Und parallel dazu muss ich mich gleich noch mit dem nächsten schritt beschäftigen: für einige dieser Container (grafana, asaterisk) muss ich im innern configurations-files neu erstellen bzw. abändern.
                      Nun möchte ich dies in zukunft beim update ja auch nicht immer wieder händisch machen müssen, sondern wenn schon, dann auch gleich über das portainer docker compose verfahren mit erledigen.
                      was ist dazu das vorgehen? Kann man der container erstellung gleich ein script mitgeben, das diese config-file Anpassung mitmacht?

                      OliverIOO Offline
                      OliverIOO Offline
                      OliverIO
                      schrieb am zuletzt editiert von
                      #92

                      @chrisham

                      ja,
                      dafür gibt es in dockler den mechanismus der volumes.
                      davon gibt es 2 typen

                      • named volumes = volumes die einen namen haben und die docker in einem internen dateibereich aufbaut. wenn die bezeichnung nicht geändert wird, so steht dieser dateibereich auch nach der regeneration dem container wieder zur verfügung
                      • bind mount volumes = das sind gemappte pfade von einzelnen dateien oder ganzen verzeichnisse, die auf dein eigenes dateisystem zeigt. dort kannst du dann in diesem verzeichnis dateien bearbeiten, die dann im container "eingeblendet" werden. auch diese stehen nach einer regeneration dem container wieder zur verfügung.

                      der container entwickler definiert selbst im dockerfile entsprechende mounts, wenn er der meinung ist, das da volatile daten enthalten sind, die nach einer regeneration erhalten bleiben müssen

                      in deiner docker management oberfläche müsste es auch eine ansicht aller vorhandenen named volumes geben. bei manchen müsste "verwaist" oder "nicht verwendet" dran stehen, weil der zugehörige container nicht mehr existiert. dort kann man die auch löschen.

                          volumes:
                            - /volume1/docker/iobroker-Chrisham:/opt/iobroker
                            - /volume1/docker/userscripts:/opt/userscripts
                            - /volume1/docker/Backup:/opt/backup/
                      

                      das was du hier siehst nennt sich bind-volumes. bei der ersten zeile sieht man,
                      das der pfad IM container /opt/iobroker sich aus dem verzeichnis /volume1/docker/iobroker-Chrisham bildet. d.h. alles was den iobroker ausmacht ist eigentlich auf deiner festplatte der synology. jede Anderung, die du dort machst, wird auch sofort IM container wirksam. manchmal muss man dienste neu starten, das die Applikation das neu einliest. aber da gibt es keinen unterschied, als wenn die applikation nativ installiert wurde

                      ich würde die ganzen konfigurationsdateien bzw. verzeichnisse in denen sich die konfigruationen befinden per solche bind mount volumes definieren und dies dann auch regelmäßig in ein backup einbeziehen. leider hilft dir der iobroker backup da nicht. das musst du selber organisieren.

                      Hier kannst du mal schauen. da sind Programme benannt mit denen man das durchführen kann. Leistungsfähig ist bspw rsync
                      Du musst dich dann noch mit einer backup strategie auseinandersetzen. d.h. wie oft ein backup gemacht wird und wie lange das aufgehoben wird.
                      Ich verwende 7xdaily,4xWeekly,12xMothly
                      d.h. ich mache jeden Tag ein Backup und hebe das 7 Tage lang auf. Nach einer Woche werden die letzten 6 gelöscht, das Sonntagsbackup wird dann zum weekly. Auch da hebe ich die 4 Wochen lang auf. Das letzte wird dann zum monthly und die 3/4 Wochen davor werden gelöscht. von den Monthly hebe ich immer die letzten 12 auf. Einmal Monatlich wird jeweils das älteste der monthlys gelöscht.
                      alle meine dockervolumes habe ich in einem verzeichnis. darunter dann eine ebene je service und daruntern je container ein separates verzeichnis und wieder darunter dann für jedes einzelne mount ein verzeichnis.
                      das wird dann täglich kopiert und in ein verzeichnis unter weekly gespeichert, das weekly_<datum> heißt
                      weiterhin wird jeden tag geprüft, ob verzeichnisse umbenannt/verschoben werden müssen gemäß den obigen regeln.

                      Meine Adapter und Widgets
                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                      Links im Profil

                      C 1 Antwort Letzte Antwort
                      0
                      • OliverIOO OliverIO

                        @chrisham

                        ja,
                        dafür gibt es in dockler den mechanismus der volumes.
                        davon gibt es 2 typen

                        • named volumes = volumes die einen namen haben und die docker in einem internen dateibereich aufbaut. wenn die bezeichnung nicht geändert wird, so steht dieser dateibereich auch nach der regeneration dem container wieder zur verfügung
                        • bind mount volumes = das sind gemappte pfade von einzelnen dateien oder ganzen verzeichnisse, die auf dein eigenes dateisystem zeigt. dort kannst du dann in diesem verzeichnis dateien bearbeiten, die dann im container "eingeblendet" werden. auch diese stehen nach einer regeneration dem container wieder zur verfügung.

                        der container entwickler definiert selbst im dockerfile entsprechende mounts, wenn er der meinung ist, das da volatile daten enthalten sind, die nach einer regeneration erhalten bleiben müssen

                        in deiner docker management oberfläche müsste es auch eine ansicht aller vorhandenen named volumes geben. bei manchen müsste "verwaist" oder "nicht verwendet" dran stehen, weil der zugehörige container nicht mehr existiert. dort kann man die auch löschen.

                            volumes:
                              - /volume1/docker/iobroker-Chrisham:/opt/iobroker
                              - /volume1/docker/userscripts:/opt/userscripts
                              - /volume1/docker/Backup:/opt/backup/
                        

                        das was du hier siehst nennt sich bind-volumes. bei der ersten zeile sieht man,
                        das der pfad IM container /opt/iobroker sich aus dem verzeichnis /volume1/docker/iobroker-Chrisham bildet. d.h. alles was den iobroker ausmacht ist eigentlich auf deiner festplatte der synology. jede Anderung, die du dort machst, wird auch sofort IM container wirksam. manchmal muss man dienste neu starten, das die Applikation das neu einliest. aber da gibt es keinen unterschied, als wenn die applikation nativ installiert wurde

                        ich würde die ganzen konfigurationsdateien bzw. verzeichnisse in denen sich die konfigruationen befinden per solche bind mount volumes definieren und dies dann auch regelmäßig in ein backup einbeziehen. leider hilft dir der iobroker backup da nicht. das musst du selber organisieren.

                        Hier kannst du mal schauen. da sind Programme benannt mit denen man das durchführen kann. Leistungsfähig ist bspw rsync
                        Du musst dich dann noch mit einer backup strategie auseinandersetzen. d.h. wie oft ein backup gemacht wird und wie lange das aufgehoben wird.
                        Ich verwende 7xdaily,4xWeekly,12xMothly
                        d.h. ich mache jeden Tag ein Backup und hebe das 7 Tage lang auf. Nach einer Woche werden die letzten 6 gelöscht, das Sonntagsbackup wird dann zum weekly. Auch da hebe ich die 4 Wochen lang auf. Das letzte wird dann zum monthly und die 3/4 Wochen davor werden gelöscht. von den Monthly hebe ich immer die letzten 12 auf. Einmal Monatlich wird jeweils das älteste der monthlys gelöscht.
                        alle meine dockervolumes habe ich in einem verzeichnis. darunter dann eine ebene je service und daruntern je container ein separates verzeichnis und wieder darunter dann für jedes einzelne mount ein verzeichnis.
                        das wird dann täglich kopiert und in ein verzeichnis unter weekly gespeichert, das weekly_<datum> heißt
                        weiterhin wird jeden tag geprüft, ob verzeichnisse umbenannt/verschoben werden müssen gemäß den obigen regeln.

                        C Offline
                        C Offline
                        Chrisham
                        schrieb am zuletzt editiert von
                        #93

                        @oliverio Vielen Dank für die Info.

                        1.) Backup: ja, das habe ich schon konfiguriert:

                        • ich habe meine kompletten Arbeitesdaten nicht mehr auf der lokalen Festplatte, sondern alles auf dem NAS, für dieses NAS habe das Hyperbackup (Synology-App) über das ich mit anderem Nutzer (räumlich getrennt, d.h. anderes Haus, andere Stadt) nächtlich eine Kreuz-Sicherung mache. Und auch mit gestuftem Aufbewahrungsplan:
                          • tägliche Sicherung über 1 Woche aufbewahren
                          • wöchentliche Sicherung über 2 Monate aufbewahren
                          • monatliche Sicherung über 1 Jahr aufbewahren
                          • jährliche Sicherung über 5 Jahre aufbewahren
                            D.h. da bin ich eigentlich safe.

                        2.) und in dieses Backup sind genau auch die gemounteten Volumes der Docker-Container einbezogen

                        3.) Konfigurationsdateien: meine Frage bezog sich jedoch auf weitere Konfig-Dateien, die ich jetzt nicht unbedingt nach außen mappen möchte, z.B.
                        3.a) der o.g. Asterisk-Container: da müssen Datein reinkopiert werden an diese Stellen:
                        /etc/asterisk/extensions
                        /etc/asterisk/manager.co
                        /etc/asterisk/sip.conf
                        /etc/asterisk/rtp.conf

                        3.b) beim Grafana-Container:
                        Da muss eine bestehende config-Datei angepasst werden unter:

                        usr/share/grafana/conf/

                        Oder würdest du sagen, dass ich die Verzeichnisse /etc und /usr auch komplett nach "draußen" mounte?

                        OliverIOO 1 Antwort Letzte Antwort
                        0
                        • C Chrisham

                          @oliverio Vielen Dank für die Info.

                          1.) Backup: ja, das habe ich schon konfiguriert:

                          • ich habe meine kompletten Arbeitesdaten nicht mehr auf der lokalen Festplatte, sondern alles auf dem NAS, für dieses NAS habe das Hyperbackup (Synology-App) über das ich mit anderem Nutzer (räumlich getrennt, d.h. anderes Haus, andere Stadt) nächtlich eine Kreuz-Sicherung mache. Und auch mit gestuftem Aufbewahrungsplan:
                            • tägliche Sicherung über 1 Woche aufbewahren
                            • wöchentliche Sicherung über 2 Monate aufbewahren
                            • monatliche Sicherung über 1 Jahr aufbewahren
                            • jährliche Sicherung über 5 Jahre aufbewahren
                              D.h. da bin ich eigentlich safe.

                          2.) und in dieses Backup sind genau auch die gemounteten Volumes der Docker-Container einbezogen

                          3.) Konfigurationsdateien: meine Frage bezog sich jedoch auf weitere Konfig-Dateien, die ich jetzt nicht unbedingt nach außen mappen möchte, z.B.
                          3.a) der o.g. Asterisk-Container: da müssen Datein reinkopiert werden an diese Stellen:
                          /etc/asterisk/extensions
                          /etc/asterisk/manager.co
                          /etc/asterisk/sip.conf
                          /etc/asterisk/rtp.conf

                          3.b) beim Grafana-Container:
                          Da muss eine bestehende config-Datei angepasst werden unter:

                          usr/share/grafana/conf/

                          Oder würdest du sagen, dass ich die Verzeichnisse /etc und /usr auch komplett nach "draußen" mounte?

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb am zuletzt editiert von OliverIO
                          #94

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

                          Konfigurationsdateien: meine Frage bezog sich jedoch auf weitere Konfig-Dateien, die ich jetzt nicht unbedingt nach außen mappen möchte, z.B.

                          warum nicht?
                          genau so funktioniert docker
                          entweder named volumes definieren. dann liegt es irgendwo in den tiefen von docker, da ist schlecht ranzukommen für eine sicherung das eignet sich für dateien, die gut sind zur Laufzeit, wo es aber kein Problem ist, wenn die weg sind (bspw caches oder vorberechnete Daten, die aber jederzeit neu berechnet werden können. das hat dann ein Laufzeitgewinn und beschleunigt das redeployment eines container bspw nach releasewechsel

                          oder per bindmount in ein selbst definiertes verzeichnis legen.

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

                          Oder würdest du sagen, dass ich die Verzeichnisse /etc und /usr auch komplett nach "draußen" mounte?

                          nein, das ist zuviel. genau die verzeichnisse oder einzelne dateien auswählen bei denen du selbst etwas konfigurierst und dann jeweils als separate zeile in die docker-config eintragen
                          also eigentlich genau die auflistung die da oben schon gemacht hast.
                          nur das du die erst definierst, dann den container neu generierst, dann liegen die dateien genau in den mount-verzeichnis auf deiner festplatte. dort kannst du sie dann ändern und den container neu starten. fertig

                          sobald du an config-dateien was änderst und du den kompletten container neu generieren wills, sind die weg, weil ja bei jedem mal neu generieren die anwendung komplett neu isntalliert wird

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          C 1 Antwort Letzte Antwort
                          0
                          • OliverIOO OliverIO

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

                            Konfigurationsdateien: meine Frage bezog sich jedoch auf weitere Konfig-Dateien, die ich jetzt nicht unbedingt nach außen mappen möchte, z.B.

                            warum nicht?
                            genau so funktioniert docker
                            entweder named volumes definieren. dann liegt es irgendwo in den tiefen von docker, da ist schlecht ranzukommen für eine sicherung das eignet sich für dateien, die gut sind zur Laufzeit, wo es aber kein Problem ist, wenn die weg sind (bspw caches oder vorberechnete Daten, die aber jederzeit neu berechnet werden können. das hat dann ein Laufzeitgewinn und beschleunigt das redeployment eines container bspw nach releasewechsel

                            oder per bindmount in ein selbst definiertes verzeichnis legen.

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

                            Oder würdest du sagen, dass ich die Verzeichnisse /etc und /usr auch komplett nach "draußen" mounte?

                            nein, das ist zuviel. genau die verzeichnisse oder einzelne dateien auswählen bei denen du selbst etwas konfigurierst und dann jeweils als separate zeile in die docker-config eintragen
                            also eigentlich genau die auflistung die da oben schon gemacht hast.
                            nur das du die erst definierst, dann den container neu generierst, dann liegen die dateien genau in den mount-verzeichnis auf deiner festplatte. dort kannst du sie dann ändern und den container neu starten. fertig

                            sobald du an config-dateien was änderst und du den kompletten container neu generieren wills, sind die weg, weil ja bei jedem mal neu generieren die anwendung komplett neu isntalliert wird

                            C Offline
                            C Offline
                            Chrisham
                            schrieb am zuletzt editiert von
                            #95

                            @oliverio ok, natürlich wieder ne Frage: wie geht das genau, nur ein einzelnes File zu mappen, google recherche hat das ergeben:

                              grafana:
                                network_mode: "host"
                                restart: always
                                image: grafana/grafana:latest
                                container_name: grafana-7
                                ports: 
                                  - "3000:3000"
                                volumes:
                                  - /volume1/docker/grafana:/var/lib/grafana
                                  - /volume1/docker/grafana:/var/lib/grafana/plugins
                                  - type: volume
                                    source: /volume1/docker/grafana/views/index.html
                                    target: /usr/share/grafana/public/views/index.html/usr/share/grafana/public/views/index.html
                                    
                            

                            Allerdings mit Fehlermeldung:
                            2023-10-30_22h39_07.png

                            OliverIOO 1 Antwort Letzte Antwort
                            0
                            • C Chrisham

                              @oliverio ok, natürlich wieder ne Frage: wie geht das genau, nur ein einzelnes File zu mappen, google recherche hat das ergeben:

                                grafana:
                                  network_mode: "host"
                                  restart: always
                                  image: grafana/grafana:latest
                                  container_name: grafana-7
                                  ports: 
                                    - "3000:3000"
                                  volumes:
                                    - /volume1/docker/grafana:/var/lib/grafana
                                    - /volume1/docker/grafana:/var/lib/grafana/plugins
                                    - type: volume
                                      source: /volume1/docker/grafana/views/index.html
                                      target: /usr/share/grafana/public/views/index.html/usr/share/grafana/public/views/index.html
                                      
                              

                              Allerdings mit Fehlermeldung:
                              2023-10-30_22h39_07.png

                              OliverIOO Offline
                              OliverIOO Offline
                              OliverIO
                              schrieb am zuletzt editiert von OliverIO
                              #96

                              @chrisham

                              https://stackoverflow.com/questions/42248198/how-to-mount-a-single-file-in-a-volume

                              eigentlich genau wie verzeichnisse im schema
                              <lokaler dateipfad>:<container dateipfad

                              du hast jetzt versucht die langversion zu nehmen, das musst aber nicht.
                              aber wenn dann wäre es wie folgt

                                  volumes:
                                    - type: bind
                                      source: /volume1/docker/grafana/views/index.html
                                      target: /usr/share/grafana/public/views/index.html
                              

                              aber eigentlich reicht auch das

                              volumes:
                                    - /volume1/docker/grafana:/var/lib/grafana
                                    - /volume1/docker/grafana:/var/lib/grafana/plugins
                                    - /volume1/docker/grafana/views/index.html:/usr/share/grafana/public/views/index.html
                              
                              

                              sehe gerade, bei target hast du es 2 mal hintereinander und type wäre bind

                              Meine Adapter und Widgets
                              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                              Links im Profil

                              C 1 Antwort Letzte Antwort
                              0
                              • OliverIOO OliverIO

                                @chrisham

                                https://stackoverflow.com/questions/42248198/how-to-mount-a-single-file-in-a-volume

                                eigentlich genau wie verzeichnisse im schema
                                <lokaler dateipfad>:<container dateipfad

                                du hast jetzt versucht die langversion zu nehmen, das musst aber nicht.
                                aber wenn dann wäre es wie folgt

                                    volumes:
                                      - type: bind
                                        source: /volume1/docker/grafana/views/index.html
                                        target: /usr/share/grafana/public/views/index.html
                                

                                aber eigentlich reicht auch das

                                volumes:
                                      - /volume1/docker/grafana:/var/lib/grafana
                                      - /volume1/docker/grafana:/var/lib/grafana/plugins
                                      - /volume1/docker/grafana/views/index.html:/usr/share/grafana/public/views/index.html
                                
                                

                                sehe gerade, bei target hast du es 2 mal hintereinander und type wäre bind

                                C Offline
                                C Offline
                                Chrisham
                                schrieb am zuletzt editiert von
                                #97

                                @oliverio perfekt. Grafana läuft schon mal mit komplett persistenter config. die komfortable update-fähigkeit meiner docker-welt ist in greifbare nähe gerückt... da wird man noch zum full-stack programmer wenn man da mal komplett durch ist...

                                OliverIOO 1 Antwort Letzte Antwort
                                0
                                • C Chrisham

                                  @oliverio perfekt. Grafana läuft schon mal mit komplett persistenter config. die komfortable update-fähigkeit meiner docker-welt ist in greifbare nähe gerückt... da wird man noch zum full-stack programmer wenn man da mal komplett durch ist...

                                  OliverIOO Offline
                                  OliverIOO Offline
                                  OliverIO
                                  schrieb am zuletzt editiert von OliverIO
                                  #98

                                  @chrisham

                                  fast
                                  wenn man docker dann mal einigermaßen durchdrungen hat, mag man auf einem host gar keine applikationen mehr anders installieren.
                                  stell dir vor morgen kommt ein betriebssystem update und du hast wirklich alle deine anwendungen in docker container virtualisiert.
                                  dann hast du da keine individuell nachinstallierten pakete mehr, keine manuellen cron einträge
                                  oder gar irgendwelche systemd/init start prozeduren, die du mal eingerichtet hast, dich aber nicht mehr daran erinnern kannst.
                                  dann wird der os upgrade wie ein klax, weil du ja nur noch docker wieder installieren musst, deine sicherung zurückspielen und dann alle container neu generierst und zack läuft

                                  oder man installiert mal kurz einen test iobroker mit der nächsten alpha/beta version ohne gefahr seine produktion zu serstören inklusive den vorteil das dann rückstandsfrei wieder entfernen zu können

                                  mittlerweile gibt es auch container mit grafischer benutzeroberfläche, da verbindest du dich dann per browser, da läuft dann irgendein rdp oder vnc. hier ein beispie für ubuntu
                                  https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc

                                  Meine Adapter und Widgets
                                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                  Links im Profil

                                  C 1 Antwort Letzte Antwort
                                  0
                                  • OliverIOO OliverIO

                                    @chrisham

                                    fast
                                    wenn man docker dann mal einigermaßen durchdrungen hat, mag man auf einem host gar keine applikationen mehr anders installieren.
                                    stell dir vor morgen kommt ein betriebssystem update und du hast wirklich alle deine anwendungen in docker container virtualisiert.
                                    dann hast du da keine individuell nachinstallierten pakete mehr, keine manuellen cron einträge
                                    oder gar irgendwelche systemd/init start prozeduren, die du mal eingerichtet hast, dich aber nicht mehr daran erinnern kannst.
                                    dann wird der os upgrade wie ein klax, weil du ja nur noch docker wieder installieren musst, deine sicherung zurückspielen und dann alle container neu generierst und zack läuft

                                    oder man installiert mal kurz einen test iobroker mit der nächsten alpha/beta version ohne gefahr seine produktion zu serstören inklusive den vorteil das dann rückstandsfrei wieder entfernen zu können

                                    mittlerweile gibt es auch container mit grafischer benutzeroberfläche, da verbindest du dich dann per browser, da läuft dann irgendein rdp oder vnc. hier ein beispie für ubuntu
                                    https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc

                                    C Offline
                                    C Offline
                                    Chrisham
                                    schrieb am zuletzt editiert von
                                    #99

                                    @oliverio und zack, asterisk container auch config persistent ausverlagert. (Leider gehen tel-anrufe noch nicht, weil hier wohl die installation der anderen linux-pakete in diesem andrius image gar nicht installiert werden, die option über

                                       environment:
                                          - PACKAGES=ffmpeg lame sox libsox-fmt-mp3
                                    

                                    scheint wohl dieser container gar nicht zu unterstützen, wie krieg ich denn da jetzt die linux-pakete rein, das ist wohl die qudratur des kreises: auf den asterisk-container bin ich gewechsel, da in iobroker das linux-paket nicht installiert werden kann, jetzt aber kann ich dort die anderen pakete nicht mehr installieren....)

                                    Ansonsten, ja klar die Docker-Technik hat wirklich was, also alles was ich jetzt so auf meiner Synology betreibe läuft mittlerweile in containern, das host-system von synology ist ja kein reines linux mehr, die haben das ziemlich verbogen, auch kein apt paket-manager,...

                                    Auf meinem Hauptrechner bin ich halt immer noch auf windows unterwegs, in der windows-welt ist die docker-technik noch nicht angekommen, man könnte ja da parallel noch eine vm oder wsl2 draufmachen und dort dann mit dockern arbeiten....

                                    OliverIOO 1 Antwort Letzte Antwort
                                    0
                                    • C Chrisham

                                      @oliverio und zack, asterisk container auch config persistent ausverlagert. (Leider gehen tel-anrufe noch nicht, weil hier wohl die installation der anderen linux-pakete in diesem andrius image gar nicht installiert werden, die option über

                                         environment:
                                            - PACKAGES=ffmpeg lame sox libsox-fmt-mp3
                                      

                                      scheint wohl dieser container gar nicht zu unterstützen, wie krieg ich denn da jetzt die linux-pakete rein, das ist wohl die qudratur des kreises: auf den asterisk-container bin ich gewechsel, da in iobroker das linux-paket nicht installiert werden kann, jetzt aber kann ich dort die anderen pakete nicht mehr installieren....)

                                      Ansonsten, ja klar die Docker-Technik hat wirklich was, also alles was ich jetzt so auf meiner Synology betreibe läuft mittlerweile in containern, das host-system von synology ist ja kein reines linux mehr, die haben das ziemlich verbogen, auch kein apt paket-manager,...

                                      Auf meinem Hauptrechner bin ich halt immer noch auf windows unterwegs, in der windows-welt ist die docker-technik noch nicht angekommen, man könnte ja da parallel noch eine vm oder wsl2 draufmachen und dort dann mit dockern arbeiten....

                                      OliverIOO Offline
                                      OliverIOO Offline
                                      OliverIO
                                      schrieb am zuletzt editiert von
                                      #100

                                      @chrisham

                                      ok, auch das geht, allerdings wird es nun ein wenig komplexer.
                                      bisher hast du das image nach einer vorlage von andrius generieren lassen.
                                      gemäß der beschreibung bei dockerhub schreibt er

                                      What's missing
                                      Only base Asterisk packages installed. If you want to add sounds, it's recommended to mount them as volume or data container, however you may install additional packages with apk command:

                                      asterisk-alsa - ALSA channel;
                                      asterisk-cdr-mysql - MySQL CDR;
                                      asterisk-chan-dongle - chan_dongle, to manage calls and SMS through Huawei USB dongle;
                                      asterisk-curl - curl integration with Asterisk;
                                      asterisk-dahdi - DAHDI channel (ISDN BRI/PRI, FXO and FXS cards integration);
                                      asterisk-fax - support faxing
                                      asterisk-mobile - Use Bluetooth mobile phones as FXO devices;
                                      asterisk-odbc - ODBC support;
                                      asterisk-pgsql - PostgreSQL support;
                                      asterisk-sounds-en - sounds
                                      asterisk-sounds-moh - music on hold;
                                      asterisk-speex - Speex codec;
                                      asterisk-srtp - SRTP encryption;
                                      asterisk-tds - MS SQL support.

                                      das heißt nun, das wir auf basis sein dockerfiles dieses ein wenig erweitern müssen um die anderen pakete noch installiert zu bekommen.

                                      nutzt du jetzt portainer oder synology für die dockerverwaltung?

                                      Meine Adapter und Widgets
                                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                      Links im Profil

                                      C OliverIOO 2 Antworten Letzte Antwort
                                      0
                                      • OliverIOO OliverIO

                                        @chrisham

                                        ok, auch das geht, allerdings wird es nun ein wenig komplexer.
                                        bisher hast du das image nach einer vorlage von andrius generieren lassen.
                                        gemäß der beschreibung bei dockerhub schreibt er

                                        What's missing
                                        Only base Asterisk packages installed. If you want to add sounds, it's recommended to mount them as volume or data container, however you may install additional packages with apk command:

                                        asterisk-alsa - ALSA channel;
                                        asterisk-cdr-mysql - MySQL CDR;
                                        asterisk-chan-dongle - chan_dongle, to manage calls and SMS through Huawei USB dongle;
                                        asterisk-curl - curl integration with Asterisk;
                                        asterisk-dahdi - DAHDI channel (ISDN BRI/PRI, FXO and FXS cards integration);
                                        asterisk-fax - support faxing
                                        asterisk-mobile - Use Bluetooth mobile phones as FXO devices;
                                        asterisk-odbc - ODBC support;
                                        asterisk-pgsql - PostgreSQL support;
                                        asterisk-sounds-en - sounds
                                        asterisk-sounds-moh - music on hold;
                                        asterisk-speex - Speex codec;
                                        asterisk-srtp - SRTP encryption;
                                        asterisk-tds - MS SQL support.

                                        das heißt nun, das wir auf basis sein dockerfiles dieses ein wenig erweitern müssen um die anderen pakete noch installiert zu bekommen.

                                        nutzt du jetzt portainer oder synology für die dockerverwaltung?

                                        C Offline
                                        C Offline
                                        Chrisham
                                        schrieb am zuletzt editiert von
                                        #101

                                        @oliverio said in USB in Docker via neuer Container über Compose u.a. andere:

                                        nutzt du jetzt portainer oder synology für die dockerverwaltung?

                                        Bis vor kurzem nutzte ich DSM-Gui von Synology, aber seit ihr mir hier das docker-compose verfahren nahelegt habt, bin ich auf portainer umgestiegen (das unterstützt m.W. Synology gar nicht), also ja: portainer.

                                        1 Antwort Letzte Antwort
                                        0
                                        • OliverIOO OliverIO

                                          @chrisham

                                          ok, auch das geht, allerdings wird es nun ein wenig komplexer.
                                          bisher hast du das image nach einer vorlage von andrius generieren lassen.
                                          gemäß der beschreibung bei dockerhub schreibt er

                                          What's missing
                                          Only base Asterisk packages installed. If you want to add sounds, it's recommended to mount them as volume or data container, however you may install additional packages with apk command:

                                          asterisk-alsa - ALSA channel;
                                          asterisk-cdr-mysql - MySQL CDR;
                                          asterisk-chan-dongle - chan_dongle, to manage calls and SMS through Huawei USB dongle;
                                          asterisk-curl - curl integration with Asterisk;
                                          asterisk-dahdi - DAHDI channel (ISDN BRI/PRI, FXO and FXS cards integration);
                                          asterisk-fax - support faxing
                                          asterisk-mobile - Use Bluetooth mobile phones as FXO devices;
                                          asterisk-odbc - ODBC support;
                                          asterisk-pgsql - PostgreSQL support;
                                          asterisk-sounds-en - sounds
                                          asterisk-sounds-moh - music on hold;
                                          asterisk-speex - Speex codec;
                                          asterisk-srtp - SRTP encryption;
                                          asterisk-tds - MS SQL support.

                                          das heißt nun, das wir auf basis sein dockerfiles dieses ein wenig erweitern müssen um die anderen pakete noch installiert zu bekommen.

                                          nutzt du jetzt portainer oder synology für die dockerverwaltung?

                                          OliverIOO Offline
                                          OliverIOO Offline
                                          OliverIO
                                          schrieb am zuletzt editiert von OliverIO
                                          #102

                                          @oliverio

                                          ok, hier bin ich nicht ganz so firm.
                                          aber lese dir mal die beschreibung durch.
                                          https://docs.portainer.io/user/docker/images/build

                                          in einem dockerfile stehen die anweisungen drin, wie ein image genau erstellt wird.
                                          im folgenden verzeichnis gibt es 2 relevante dateien dockerfile und docker-entrypoint
                                          https://github.com/andrius/asterisk/tree/master/alpine

                                          ziel ist es, das dockerfile aus diesem verzeichnis zu kopieren und so zu erweitern, das deine weiteren pakete noch installiert werden.
                                          leider hat der ersteller so etwas nicht vorgesehen, wie es bei iobroker mit der packages environment variable ist.
                                          daher muss man das selbst eintragen. dürfte aber nicht wirklich so komplex sein.

                                          die datei docker-entrypoint ist eigentlich nur eine shell-datei, die ausgeführt wird, sobald die erstellung des images fertig ist, dort werden dann noch ein paar weitere schritte durchgeführt.

                                          # vim:set ft=dockerfile:
                                          FROM <%= docker_baseimage %>
                                          
                                          LABEL maintainer="Andrius Kairiukstis <k@andrius.mobi>"
                                          
                                          ENV LANG=C.UTF-8
                                          ENV LC_ALL C.UTF-8
                                          
                                          RUN set -e \
                                          && apk add --update --quiet \
                                                   asterisk \
                                                   asterisk-sample-config >/dev/null \
                                          && asterisk -U asterisk &>/dev/null \
                                          && sleep 5s \
                                          && [ "$(asterisk -rx "core show channeltypes" | grep PJSIP)" != "" ] && : \
                                               || rm -rf /usr/lib/asterisk/modules/*pj* \
                                          && pkill -9 ast \
                                          && sleep 1s \
                                          && truncate -s 0 \
                                               /var/log/asterisk/messages \
                                               /var/log/asterisk/queue_log || : \
                                          && mkdir -p /var/spool/asterisk/fax \
                                          && chown -R asterisk: /var/spool/asterisk \
                                          && rm -rf /var/run/asterisk/* \
                                                    /var/cache/apk/* \
                                                    /tmp/* \
                                                    /var/tmp/*
                                          
                                          EXPOSE 5060/udp 5060/tcp
                                          VOLUME /var/lib/asterisk/sounds /var/lib/asterisk/keys /var/lib/asterisk/phoneprov /var/spool/asterisk /var/log/asterisk
                                          
                                          ADD docker-entrypoint.sh /docker-entrypoint.sh
                                          
                                          ENTRYPOINT ["/docker-entrypoint.sh"]
                                          

                                          interessant sind hier die befehle in zeile 10-12
                                          apk add ist der alpine befehl um pakete zu installieren
                                          wenn du das -Zeichen siehst, dann bedeutet das, das es zu einem Befehl gehört aber in der nächsten zeile weitergeht. Der Befehl endet immer mit &&, was nix anders als eine Verknüpfung ist. Zeile 9-27 ist eigentlich alles eine Anweisung, die auf einmal losgeschickt wird und dann vom Betriebssystem der Reihe nach abgearbeitet wird.

                                          Also Zeile 10-12 muss jetzt so erweitert werden, das deine weiteren Pakete da noch ergänzt werden. Am besten je Zeile eines. Die Ergänzung müsste dann so aussehen

                                          ffmpeg /
                                          lame /
                                          sox /
                                          libsox-fmt-mp3
                                          

                                          Die Environment variable PACKAGES kannst aus der docker-asterix wieder herausnehmen. Die wird eh nicht beachtet.

                                          in diesem dockerfile musst du noch

                                          FROM <%= docker_baseimage %>
                                          gegen
                                          FROM alpine:latest
                                          ersetzen, da der Ersteller diese Datei verwendet um ganz viele images zu erzeugen und es nochmal in einem script verarbeitet wird.

                                          Meine Adapter und Widgets
                                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                          Links im Profil

                                          C 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          778

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe