Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [gelöst] Docker: /opt/iobroker, Influxdb2, Backups und mehr?

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.7k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

[gelöst] Docker: /opt/iobroker, Influxdb2, Backups und mehr?

[gelöst] Docker: /opt/iobroker, Influxdb2, Backups und mehr?

Scheduled Pinned Locked Moved ioBroker Allgemein
14 Posts 2 Posters 1.1k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Marc BergM Marc Berg

    @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

    Nun graust es mir etwas vor der Sache mit dem Volume auf dem Host-System zum Persistieren der Nutzdaten.

    Ich glaube, du machst dir da zu viele Sorgen und es dir mit der Anlage von Volumes auch unnötig schwer.
    Definiere einfach ein "root" Verzeichnis, in welchem deine persistenten Daten liegen werden, z.B. "/opt/docker". Portainer liegt dann unter "/opt/docker/portainer", ioBroker unter "/opt/docker/iobroker" und so weiter. Ganz easy und vor allem sehr einfach durchschaubar.

    Ich habe einen Pi4 mit 8GB RAM, der das stemmen können sollte.

    Kein Problem. Und lass dir von keinem erzählen, dass man einen PI mit dem Docker Overhead nicht belasten sollte.

    Docker habe ich erst einmal nur installiert und per hello-world getestet. Nichts weiter. Jetzt mache ich mal theoretisch weiter und dann kann mir hoffentlich jemand sagen, was ich falsch machen würde 😄

    Um Problemen aus dem Weg zu gehen, würde ich einfach den Weg über backup und restore gehen. Das ist sauber und gleich geübt.

    1. Ich installiere und starte Portainer
    docker volume create portainer_data
    docker run -d -p 8000:8000 -p 9443:9443 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data cr.portainer.io/portainer/portainer-ce:latest
    

    Mit dem oben gesagten

    sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v /opt/docker/portainer/data:/data portainer/portainer-ce:latest
    
    1. Muss ich NodeRed - was ja nur als ioBroker-Adapter installiert ist - auch stoppen, bevor ich wechsel? Oder reicht es, wenn ioBroker gestoppt ist? Einen NodeRed-Service finde ich auf der Shell nicht.

    wird über ioBroker Restore wiederhergestellt.

    1. Ist es korrekt, dass ich für jeden Docker-Container einen eigenen Share mache?

    kein Share. Ein Verzeichnis.

    1. Ist es sinnvoll Influx2 als Container laufen zu lassen? Ist das "ganz normal"? Eine Datenbank ist ja eigentlich zum Persistieren da, und warum man das als Container laufen lassen sollte passt nicht ins Konzept. Oder doch?

    Passt. Du hast doch die persistenten Daten in einem separaten Verzeichnis. Diese überleben jeden Neustart und jedes Update.

    1. Wie aktualisiere ich nodeJS & Co im Container? Auf buanet.de steht, dass man am Besten immer den Container über Portainer aktualisiert. Ist das best practice? Muss ich da noch mehr beachten?

    Hier steht alles, was du wissen musst. Das ist aktuell:

    https://docs.buanet.de/iobroker-docker-image/docs/#updates-upgrades

    1. Der js-controller wird auf buanet.de seperat erwähnt, ich verstehe aber nicht: Der läuft auf dem Host, wird aber von Container genutzt und darum muss der Container für

    Das hast du falsch verstanden. Der js-controller als "Kern" des ioBroker läuft im buanet Container.

    1. Muss ich weitere Versichnisse einbinden, falls ich ein manuelles Backup der Daten auf Dateiebene machen möchte? Aktuell würde ich sichern:
      /var/lib/docker/volumes/*

    Wie oben beschrieben, das "root" Verzeichnis inkl. aller Unterverzeichnisse sichern. Und unabhängig davon noch saubere Sicherungen über BackitUp für DB und ioB.

    und hätte in meiner Theorie damit die Nutzdaten von Influxdb2 und ioBroker samt NodeRed, OpenKNX, VIS etc. gesichert. Die Container selbst natürlich nicht.

    Ja, korrekt.

    1. Möchte ich nun auf bookworm upgraden, würde ich aus Punkt 4 eine Sicherung machen und das komplette PiOS neu aufspielen. Danach Docker, Portainer, nodeJS und die Container installieren. Backup aus /var/lib/docker/volumes/* zurückspielen...fertig?

    Wichtig dabei ist lediglich, dass die Rechte unangetastet bleiben bzw. wiederhergestellt werden.

    Wer bis hierher gekommen ist: Danke! Ich bin für jegliche Tipps und Kommentare, was es vllt. noch zu beachten gibt, dankbar.

    Grundsätzlich würde ich gleich mit den Stacks in Portainer starten, das macht das Docker-Leben nochmal wesentlich einfacher:
    Bei Änderungen einfach eine "Datei" anpassen, neudeploy, fertig. Keine kryptischen Befehle auf der Kommandozeile, mit der Sicherung des Stacks kann man seine gesamte Docker-Umgebung aus genau einer Datei neu aufbauen, etc.

    S Offline
    S Offline
    Sleepwalker
    wrote on last edited by Sleepwalker
    #3

    @marc-berg said in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

    Um Problemen aus dem Weg zu gehen, würde ich einfach den Weg über backup und restore gehen. Das ist sauber und gleich geübt.

    1. Ich installiere und starte Portainer
    docker volume create portainer_data
    docker run -d -p 8000:8000 -p 9443:9443 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data cr.portainer.io/portainer/portainer-ce:latest
    

    Mit dem oben gesagten

    sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v /opt/docker/portainer/data:/data portainer/portainer-ce:latest
    
    1. Muss ich NodeRed - was ja nur als ioBroker-Adapter installiert ist - auch stoppen, bevor ich wechsel? Oder reicht es, wenn ioBroker gestoppt ist? Einen NodeRed-Service finde ich auf der Shell nicht.

    wird über ioBroker Restore wiederhergestellt.

    Ja, guter Punkt. Ich kann das Backitup-Backup "produktiv" testen.
    Backup aus der Cloud holen, nach /opt/iobroker/backup auf dem Host kopieren und

    iobroker restore
    

    direkt im Container aufrufen, richtig?

    1. Ist es korrekt, dass ich für jeden Docker-Container einen eigenen Share mache?

    kein Share. Ein Verzeichnis.

    Falsches Wording, stimmt. Ich war beim teilen zw. Host und Gast 🙂

    1. Ist es sinnvoll Influx2 als Container laufen zu lassen? Ist das "ganz normal"? Eine Datenbank ist ja eigentlich zum Persistieren da, und warum man das als Container laufen lassen sollte passt nicht ins Konzept. Oder doch?

    Passt. Du hast doch die persistenten Daten in einem separaten Verzeichnis. Diese überleben jeden Neustart und jedes Update.

    Ja, es ist trotzdem irgendwie seltsam etwas für Datenspeicherung in einem Container zu haben. Sehe ich aber auch so, wie du. War nur eine Frage am Rande.

    1. Wie aktualisiere ich nodeJS & Co im Container? Auf buanet.de steht, dass man am Besten immer den Container über Portainer aktualisiert. Ist das best practice? Muss ich da noch mehr beachten?

    Hier steht alles, was du wissen musst. Das ist aktuell:

    https://docs.buanet.de/iobroker-docker-image/docs/#updates-upgrades

    Jup, da war ich 🙂

    1. Der js-controller wird auf buanet.de seperat erwähnt, ich verstehe aber nicht: Der läuft auf dem Host, wird aber von Container genutzt und darum muss der Container für

    Das hast du falsch verstanden. Der js-controller als "Kern" des ioBroker läuft im buanet Container.

    Super, danke, ich hab mich da wohl verheddert, weil dort steht, er sei in /opt/iobroker installiert. Ist aber ja "im Container" 🤦

    1. Möchte ich nun auf bookworm upgraden, würde ich aus Punkt 4 eine Sicherung machen und das komplette PiOS neu aufspielen. Danach Docker, Portainer, nodeJS und die Container installieren. Backup aus /var/lib/docker/volumes/* zurückspielen...fertig?

    Wichtig dabei ist lediglich, dass die Rechte unangetastet bleiben bzw. wiederhergestellt werden.

    Guter Hinweis für die Sicherung auf Dateiebene, danke. Ich werde wohl tar bemühen mir ein Archiv zu machen, das ich mit Windows abholen kann.

    Wer bis hierher gekommen ist: Danke! Ich bin für jegliche Tipps und Kommentare, was es vllt. noch zu beachten gibt, dankbar.

    Grundsätzlich würde ich gleich mit den Stacks in Portainer starten, das macht das Docker-Leben nochmal wesentlich einfacher:
    Bei Änderungen einfach eine "Datei" anpassen, neudeploy, fertig. Keine kryptischen Befehle auf der Kommandozeile, mit der Sicherung des Stacks kann man seine gesamte Docker-Umgebung aus genau einer Datei neu aufbauen, etc.

    Danke, nehme ich mit auf meine Agenda. Ich habe mit Portainer nur etwas YT-Video-Kenntnisse...

    Puh, herzlichen Dank dir! Ich bin immer etwas vorsichtig, weil ich im Fall von Linux nur gefährliches Halbwissen habe und schon das ein oder andere Spielsystem bis hin zu für mich zu der Zeit nicht raparierbarer "kernel panic" zerschossen habe 😄

    Marc BergM 1 Reply Last reply
    0
    • S Sleepwalker

      @marc-berg said in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

      Um Problemen aus dem Weg zu gehen, würde ich einfach den Weg über backup und restore gehen. Das ist sauber und gleich geübt.

      1. Ich installiere und starte Portainer
      docker volume create portainer_data
      docker run -d -p 8000:8000 -p 9443:9443 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data cr.portainer.io/portainer/portainer-ce:latest
      

      Mit dem oben gesagten

      sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v /opt/docker/portainer/data:/data portainer/portainer-ce:latest
      
      1. Muss ich NodeRed - was ja nur als ioBroker-Adapter installiert ist - auch stoppen, bevor ich wechsel? Oder reicht es, wenn ioBroker gestoppt ist? Einen NodeRed-Service finde ich auf der Shell nicht.

      wird über ioBroker Restore wiederhergestellt.

      Ja, guter Punkt. Ich kann das Backitup-Backup "produktiv" testen.
      Backup aus der Cloud holen, nach /opt/iobroker/backup auf dem Host kopieren und

      iobroker restore
      

      direkt im Container aufrufen, richtig?

      1. Ist es korrekt, dass ich für jeden Docker-Container einen eigenen Share mache?

      kein Share. Ein Verzeichnis.

      Falsches Wording, stimmt. Ich war beim teilen zw. Host und Gast 🙂

      1. Ist es sinnvoll Influx2 als Container laufen zu lassen? Ist das "ganz normal"? Eine Datenbank ist ja eigentlich zum Persistieren da, und warum man das als Container laufen lassen sollte passt nicht ins Konzept. Oder doch?

      Passt. Du hast doch die persistenten Daten in einem separaten Verzeichnis. Diese überleben jeden Neustart und jedes Update.

      Ja, es ist trotzdem irgendwie seltsam etwas für Datenspeicherung in einem Container zu haben. Sehe ich aber auch so, wie du. War nur eine Frage am Rande.

      1. Wie aktualisiere ich nodeJS & Co im Container? Auf buanet.de steht, dass man am Besten immer den Container über Portainer aktualisiert. Ist das best practice? Muss ich da noch mehr beachten?

      Hier steht alles, was du wissen musst. Das ist aktuell:

      https://docs.buanet.de/iobroker-docker-image/docs/#updates-upgrades

      Jup, da war ich 🙂

      1. Der js-controller wird auf buanet.de seperat erwähnt, ich verstehe aber nicht: Der läuft auf dem Host, wird aber von Container genutzt und darum muss der Container für

      Das hast du falsch verstanden. Der js-controller als "Kern" des ioBroker läuft im buanet Container.

      Super, danke, ich hab mich da wohl verheddert, weil dort steht, er sei in /opt/iobroker installiert. Ist aber ja "im Container" 🤦

      1. Möchte ich nun auf bookworm upgraden, würde ich aus Punkt 4 eine Sicherung machen und das komplette PiOS neu aufspielen. Danach Docker, Portainer, nodeJS und die Container installieren. Backup aus /var/lib/docker/volumes/* zurückspielen...fertig?

      Wichtig dabei ist lediglich, dass die Rechte unangetastet bleiben bzw. wiederhergestellt werden.

      Guter Hinweis für die Sicherung auf Dateiebene, danke. Ich werde wohl tar bemühen mir ein Archiv zu machen, das ich mit Windows abholen kann.

      Wer bis hierher gekommen ist: Danke! Ich bin für jegliche Tipps und Kommentare, was es vllt. noch zu beachten gibt, dankbar.

      Grundsätzlich würde ich gleich mit den Stacks in Portainer starten, das macht das Docker-Leben nochmal wesentlich einfacher:
      Bei Änderungen einfach eine "Datei" anpassen, neudeploy, fertig. Keine kryptischen Befehle auf der Kommandozeile, mit der Sicherung des Stacks kann man seine gesamte Docker-Umgebung aus genau einer Datei neu aufbauen, etc.

      Danke, nehme ich mit auf meine Agenda. Ich habe mit Portainer nur etwas YT-Video-Kenntnisse...

      Puh, herzlichen Dank dir! Ich bin immer etwas vorsichtig, weil ich im Fall von Linux nur gefährliches Halbwissen habe und schon das ein oder andere Spielsystem bis hin zu für mich zu der Zeit nicht raparierbarer "kernel panic" zerschossen habe 😄

      Marc BergM Offline
      Marc BergM Offline
      Marc Berg
      Most Active
      wrote on last edited by
      #4

      @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

      Ich kann das Backitup-Backup "produktiv" testen.
      Backup aus der Cloud holen, nach /opt/iobroker/backup auf dem Host kopieren und

      iobroker restore
      

      direkt im Container aufrufen, richtig?

      Ja, das geht. Mit den neuen Backitup-Versionen kannst du das Backup auch per Weboberfläche down- bzw- uploaden und musst dich nicht mehr auf der Kommandozeile rumtreiben, falls da eine Aversion besteht. Aber, unbedingt diese zusätzlichen drei Ports mappen:

      https://github.com/simatec/ioBroker.backitup/blob/master/docs/de/backitup.md#docker-unterstützung

      Ja, es ist trotzdem irgendwie seltsam etwas für Datenspeicherung in einem Container zu haben. Sehe ich aber auch so, wie du. War nur eine Frage am Rande.

      Ist ja nicht "IM" Container.

      Guter Hinweis für die Sicherung auf Dateiebene, danke. Ich werde wohl tar bemühen mir ein Archiv zu machen, das ich mit Windows abholen kann.

      Oh ja, wenn Windows in der Kette ist, dann ist es um so mehr ein Thema.

      Danke, nehme ich mit auf meine Agenda. Ich habe mit Portainer nur etwas YT-Video-Kenntnisse...

      Und gleich einen Plan machen, welches Netzwerk du nutzen willst. Das "mitgelieferte" Bridge-Netzwerk würde ich nicht nutzen, weil dort kein DNS innerhalb des Netzes geht. Wenn du ein eigenes Bridge-Netzwerk erstellst, kannst du innerhalb des Netzwerkes mit den Container-/Hostnamen arbeiten und kannst z.B. die InfluxDB direkt ansprechen.

      NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

      Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

      Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

      S 1 Reply Last reply
      1
      • Marc BergM Marc Berg

        @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

        Ich kann das Backitup-Backup "produktiv" testen.
        Backup aus der Cloud holen, nach /opt/iobroker/backup auf dem Host kopieren und

        iobroker restore
        

        direkt im Container aufrufen, richtig?

        Ja, das geht. Mit den neuen Backitup-Versionen kannst du das Backup auch per Weboberfläche down- bzw- uploaden und musst dich nicht mehr auf der Kommandozeile rumtreiben, falls da eine Aversion besteht. Aber, unbedingt diese zusätzlichen drei Ports mappen:

        https://github.com/simatec/ioBroker.backitup/blob/master/docs/de/backitup.md#docker-unterstützung

        Ja, es ist trotzdem irgendwie seltsam etwas für Datenspeicherung in einem Container zu haben. Sehe ich aber auch so, wie du. War nur eine Frage am Rande.

        Ist ja nicht "IM" Container.

        Guter Hinweis für die Sicherung auf Dateiebene, danke. Ich werde wohl tar bemühen mir ein Archiv zu machen, das ich mit Windows abholen kann.

        Oh ja, wenn Windows in der Kette ist, dann ist es um so mehr ein Thema.

        Danke, nehme ich mit auf meine Agenda. Ich habe mit Portainer nur etwas YT-Video-Kenntnisse...

        Und gleich einen Plan machen, welches Netzwerk du nutzen willst. Das "mitgelieferte" Bridge-Netzwerk würde ich nicht nutzen, weil dort kein DNS innerhalb des Netzes geht. Wenn du ein eigenes Bridge-Netzwerk erstellst, kannst du innerhalb des Netzwerkes mit den Container-/Hostnamen arbeiten und kannst z.B. die InfluxDB direkt ansprechen.

        S Offline
        S Offline
        Sleepwalker
        wrote on last edited by
        #5

        @marc-berg
        Sehr guter Einwand, danke! Ich habe mir gerade etwas seichte Kost als Video gegeben und schwanke zwischen User-Defined Bridge und IP VLAN L3. Aus Faulheit (und weil ich vermutlich nicht so arg viele Container laufen haben werde) wird es wohl auf ersteres hinauslaufen. MAC VLAN und IP VLAN L2 haben mich jetzt nicht so angesprochen.
        Für Interessierte, ist auf Englisch, aber super gut erklärt: https://www.youtube.com/watch?v=bKFMS5C4CG0

        Nochmal kurz zurück zu den Stacks: Wenn ich dich richtig verstehe, ist deine Empfehlung einfach alle Container in einem Stack laufen zu lassen, richtig? Falls ja, was passiert, wenn ich bspw. nur einen Container wiederherstellen möchte? Geht das auch oder bin ich da an den kompletten Stack gebunden?

        Marc BergM 1 Reply Last reply
        0
        • S Sleepwalker

          @marc-berg
          Sehr guter Einwand, danke! Ich habe mir gerade etwas seichte Kost als Video gegeben und schwanke zwischen User-Defined Bridge und IP VLAN L3. Aus Faulheit (und weil ich vermutlich nicht so arg viele Container laufen haben werde) wird es wohl auf ersteres hinauslaufen. MAC VLAN und IP VLAN L2 haben mich jetzt nicht so angesprochen.
          Für Interessierte, ist auf Englisch, aber super gut erklärt: https://www.youtube.com/watch?v=bKFMS5C4CG0

          Nochmal kurz zurück zu den Stacks: Wenn ich dich richtig verstehe, ist deine Empfehlung einfach alle Container in einem Stack laufen zu lassen, richtig? Falls ja, was passiert, wenn ich bspw. nur einen Container wiederherstellen möchte? Geht das auch oder bin ich da an den kompletten Stack gebunden?

          Marc BergM Offline
          Marc BergM Offline
          Marc Berg
          Most Active
          wrote on last edited by
          #6

          @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

          ist deine Empfehlung einfach alle Container in einem Stack laufen zu lassen, richtig?

          Das kann man so machen. Wenn man loslegt und vielleicht ständig neu starten muss, kann man zunächst auch jeden Container in einen eigenen Stack legen. Später fasst man das zusammen, es ist ja nicht viel mehr als ein copy/paste. Da muss man ein Gefühl für entwickeln.

          Falls ja, was passiert, wenn ich bspw. nur einen Container wiederherstellen möchte? Geht das auch oder bin ich da an den kompletten Stack gebunden?

          Jeder Container bleibt eigenständig und lässt sich separat wiederherstellen, starten, stoppen. Wenn du allerdings einen Stack stoppst, werden alle Container im Stack gelöscht und beim Starten wieder angelegt. Das gleiche gilt für Netzwerke, wenn sie mit im Stack definiert sind.

          NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

          Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

          Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

          S 2 Replies Last reply
          1
          • Marc BergM Marc Berg

            @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

            ist deine Empfehlung einfach alle Container in einem Stack laufen zu lassen, richtig?

            Das kann man so machen. Wenn man loslegt und vielleicht ständig neu starten muss, kann man zunächst auch jeden Container in einen eigenen Stack legen. Später fasst man das zusammen, es ist ja nicht viel mehr als ein copy/paste. Da muss man ein Gefühl für entwickeln.

            Falls ja, was passiert, wenn ich bspw. nur einen Container wiederherstellen möchte? Geht das auch oder bin ich da an den kompletten Stack gebunden?

            Jeder Container bleibt eigenständig und lässt sich separat wiederherstellen, starten, stoppen. Wenn du allerdings einen Stack stoppst, werden alle Container im Stack gelöscht und beim Starten wieder angelegt. Das gleiche gilt für Netzwerke, wenn sie mit im Stack definiert sind.

            S Offline
            S Offline
            Sleepwalker
            wrote on last edited by
            #7

            @marc-berg Danke, du hast mir echt geholfen. Ich gehe das am Wochenende mal an und berichte hier 👍

            1 Reply Last reply
            0
            • Marc BergM Marc Berg

              @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

              ist deine Empfehlung einfach alle Container in einem Stack laufen zu lassen, richtig?

              Das kann man so machen. Wenn man loslegt und vielleicht ständig neu starten muss, kann man zunächst auch jeden Container in einen eigenen Stack legen. Später fasst man das zusammen, es ist ja nicht viel mehr als ein copy/paste. Da muss man ein Gefühl für entwickeln.

              Falls ja, was passiert, wenn ich bspw. nur einen Container wiederherstellen möchte? Geht das auch oder bin ich da an den kompletten Stack gebunden?

              Jeder Container bleibt eigenständig und lässt sich separat wiederherstellen, starten, stoppen. Wenn du allerdings einen Stack stoppst, werden alle Container im Stack gelöscht und beim Starten wieder angelegt. Das gleiche gilt für Netzwerke, wenn sie mit im Stack definiert sind.

              S Offline
              S Offline
              Sleepwalker
              wrote on last edited by Sleepwalker
              #8

              @marc-berg
              Mahlzeit!

              So, ich habe jetzt tatsächlich alles so laufen, wie vorher, nur als Container. Es gab ein paar Stolperfallen, aber die waren alle lösbar.
              Ich konnte und kann z.B. nicht per Bash auf die Volumes zugreifen. Also war nichts mit "mal eben die Daten vom Host in die Volumes kopieren". Ist aber auch kein Drama gewesen ich habe mit Backitup fast alles wiederherstellen können. An den Namen des Buckets in Influx konnte ich mich nicht erinnern, aber das war im Endeffekt auch nicht wild. Ist jetzt aber notiert 😉 Der HomeConnet-Adapter muss nochmal angepasst werden, aber der interessiert mich gerade nicht so. Ansonsten ist alles, bis auf Influx gestartet. War richtig cool.

              Was mich aber etwas mehr Zeit gekostet hat, waren die fehlenden beiden Paletten aus NodeRed, die werden nämlich nicht mitgesichert. Da ich einmal aus Versehen nur eine ähnliche Palette installiert hatte, gab es beim erneuten Installieren der richtigen Palette Probleme (node-red-contrib-suncron != node-red-contrib-cb-suncron). Ein nochmaliges Wiederherstellen vom NodeRed-Backup half dann nur noch.

              Was mir aber mit Abstand am wenigsten gefällt, ist das Neuerstellen eines Containers in Portainer, bei dem man z.B. eine Portweiterleitung vergessen hat. Umständlicher geht's ja nicht. Immer alles neu einstellen. Ports, Netzwerk, Volume, Umgebungsvariablen, ...
              Eine Option für ein "Template" für einen Container wäre super. Da ich das Thema "Stack" etwas nach hinten geschoben habe, würde ich aktuell tatsächlich die Kommandozeile zum Starten bevorzugen. Da ist das Anpassen wesentlich angeneher und zeitsparender. Mal davon abgesehen, dass ich den Container alle paar Monate für Updates mal neu starten muss und dann keine Lust habe, wieder alle Einstellungen zusammenzukratzen.

              Jetzt befasse ich mich definitiv mit Stacks, bevor ich weiter mache 😄

              Kurzes PS: Ich sehe gerade, dass man sich selbst Templates zusammenschreiben kann, in denen die ganze Konfiguration untergebracht werden kann.

              Aber:

              Eine Frage bleibt nun aber übrig: Ist das mit dem Zugriff auf die Docker-Volumes normal? Geht das nur über Docker-Befehle, wenn man dort etwas hin und her kopieren möchte? Würde den Kram ja gerne einmal auf Dateiebene sichern...

              Marc BergM 1 Reply Last reply
              0
              • S Sleepwalker

                @marc-berg
                Mahlzeit!

                So, ich habe jetzt tatsächlich alles so laufen, wie vorher, nur als Container. Es gab ein paar Stolperfallen, aber die waren alle lösbar.
                Ich konnte und kann z.B. nicht per Bash auf die Volumes zugreifen. Also war nichts mit "mal eben die Daten vom Host in die Volumes kopieren". Ist aber auch kein Drama gewesen ich habe mit Backitup fast alles wiederherstellen können. An den Namen des Buckets in Influx konnte ich mich nicht erinnern, aber das war im Endeffekt auch nicht wild. Ist jetzt aber notiert 😉 Der HomeConnet-Adapter muss nochmal angepasst werden, aber der interessiert mich gerade nicht so. Ansonsten ist alles, bis auf Influx gestartet. War richtig cool.

                Was mich aber etwas mehr Zeit gekostet hat, waren die fehlenden beiden Paletten aus NodeRed, die werden nämlich nicht mitgesichert. Da ich einmal aus Versehen nur eine ähnliche Palette installiert hatte, gab es beim erneuten Installieren der richtigen Palette Probleme (node-red-contrib-suncron != node-red-contrib-cb-suncron). Ein nochmaliges Wiederherstellen vom NodeRed-Backup half dann nur noch.

                Was mir aber mit Abstand am wenigsten gefällt, ist das Neuerstellen eines Containers in Portainer, bei dem man z.B. eine Portweiterleitung vergessen hat. Umständlicher geht's ja nicht. Immer alles neu einstellen. Ports, Netzwerk, Volume, Umgebungsvariablen, ...
                Eine Option für ein "Template" für einen Container wäre super. Da ich das Thema "Stack" etwas nach hinten geschoben habe, würde ich aktuell tatsächlich die Kommandozeile zum Starten bevorzugen. Da ist das Anpassen wesentlich angeneher und zeitsparender. Mal davon abgesehen, dass ich den Container alle paar Monate für Updates mal neu starten muss und dann keine Lust habe, wieder alle Einstellungen zusammenzukratzen.

                Jetzt befasse ich mich definitiv mit Stacks, bevor ich weiter mache 😄

                Kurzes PS: Ich sehe gerade, dass man sich selbst Templates zusammenschreiben kann, in denen die ganze Konfiguration untergebracht werden kann.

                Aber:

                Eine Frage bleibt nun aber übrig: Ist das mit dem Zugriff auf die Docker-Volumes normal? Geht das nur über Docker-Befehle, wenn man dort etwas hin und her kopieren möchte? Würde den Kram ja gerne einmal auf Dateiebene sichern...

                Marc BergM Offline
                Marc BergM Offline
                Marc Berg
                Most Active
                wrote on last edited by
                #9

                @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                Ich konnte und kann z.B. nicht per Bash auf die Volumes zugreifen. Also war nichts mit "mal eben die Daten vom Host in die Volumes kopieren".

                Verstehe ich nicht. Siehe weiter unten.

                Was mich aber etwas mehr Zeit gekostet hat, waren die fehlenden beiden Paletten aus NodeRed, die werden nämlich nicht mitgesichert. Da ich einmal aus Versehen nur eine ähnliche Palette installiert hatte, gab es beim erneuten Installieren der richtigen Palette Probleme (node-red-contrib-suncron != node-red-contrib-cb-suncron). Ein nochmaliges Wiederherstellen vom NodeRed-Backup half dann nur noch.

                Stimmt, das ist nicht in der ioBoker Sicherung enthalten, aber dazu gibt es ja das zusätzliche Node-Red Backup.

                Was mir aber mit Abstand am wenigsten gefällt, ist das Neuerstellen eines Containers in Portainer, bei dem man z.B. eine Portweiterleitung vergessen hat. Umständlicher geht's ja nicht. Immer alles neu einstellen. Ports, Netzwerk, Volume, Umgebungsvariablen, ...

                Nein, das stimmt nicht. In Portainer auf "Duplicate/Edit" klicken, Optionen anpassen/ergänzen, danach auf "Deploy", fertig.

                Kurzes PS: Ich sehe gerade, dass man sich selbst Templates zusammenschreiben kann, in denen die ganze Konfiguration untergebracht werden kann.

                Wie gesagt, nicht notwendig.

                Eine Frage bleibt nun aber übrig: Ist das mit dem Zugriff auf die Docker-Volumes normal? Geht das nur über Docker-Befehle, wenn man dort etwas hin und her kopieren möchte? Würde den Kram ja gerne einmal auf Dateiebene sichern...

                Meine Empfehlung weiter oben war, keine Volumes zu verwenden (sondern "Binds"). Aber selbst, wenn man Volumes nutzt (die nicht auf CIFS/NFS basieren), kann man über den Pfad "/var/lib/docker/volumes/<volume-name>/_data" auf die Daten zugreifen.

                NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                S 1 Reply Last reply
                1
                • Marc BergM Marc Berg

                  @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                  Ich konnte und kann z.B. nicht per Bash auf die Volumes zugreifen. Also war nichts mit "mal eben die Daten vom Host in die Volumes kopieren".

                  Verstehe ich nicht. Siehe weiter unten.

                  Was mich aber etwas mehr Zeit gekostet hat, waren die fehlenden beiden Paletten aus NodeRed, die werden nämlich nicht mitgesichert. Da ich einmal aus Versehen nur eine ähnliche Palette installiert hatte, gab es beim erneuten Installieren der richtigen Palette Probleme (node-red-contrib-suncron != node-red-contrib-cb-suncron). Ein nochmaliges Wiederherstellen vom NodeRed-Backup half dann nur noch.

                  Stimmt, das ist nicht in der ioBoker Sicherung enthalten, aber dazu gibt es ja das zusätzliche Node-Red Backup.

                  Was mir aber mit Abstand am wenigsten gefällt, ist das Neuerstellen eines Containers in Portainer, bei dem man z.B. eine Portweiterleitung vergessen hat. Umständlicher geht's ja nicht. Immer alles neu einstellen. Ports, Netzwerk, Volume, Umgebungsvariablen, ...

                  Nein, das stimmt nicht. In Portainer auf "Duplicate/Edit" klicken, Optionen anpassen/ergänzen, danach auf "Deploy", fertig.

                  Kurzes PS: Ich sehe gerade, dass man sich selbst Templates zusammenschreiben kann, in denen die ganze Konfiguration untergebracht werden kann.

                  Wie gesagt, nicht notwendig.

                  Eine Frage bleibt nun aber übrig: Ist das mit dem Zugriff auf die Docker-Volumes normal? Geht das nur über Docker-Befehle, wenn man dort etwas hin und her kopieren möchte? Würde den Kram ja gerne einmal auf Dateiebene sichern...

                  Meine Empfehlung weiter oben war, keine Volumes zu verwenden (sondern "Binds"). Aber selbst, wenn man Volumes nutzt (die nicht auf CIFS/NFS basieren), kann man über den Pfad "/var/lib/docker/volumes/<volume-name>/_data" auf die Daten zugreifen.

                  S Offline
                  S Offline
                  Sleepwalker
                  wrote on last edited by Sleepwalker
                  #10

                  @marc-berg said in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                  @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                  Ich konnte und kann z.B. nicht per Bash auf die Volumes zugreifen. Also war nichts mit "mal eben die Daten vom Host in die Volumes kopieren".

                  Verstehe ich nicht. Siehe weiter unten.

                  Was mich aber etwas mehr Zeit gekostet hat, waren die fehlenden beiden Paletten aus NodeRed, die werden nämlich nicht mitgesichert. Da ich einmal aus Versehen nur eine ähnliche Palette installiert hatte, gab es beim erneuten Installieren der richtigen Palette Probleme (node-red-contrib-suncron != node-red-contrib-cb-suncron). Ein nochmaliges Wiederherstellen vom NodeRed-Backup half dann nur noch.

                  Stimmt, das ist nicht in der ioBoker Sicherung enthalten, aber dazu gibt es ja das zusätzliche Node-Red Backup.

                  Selbst ein Backup von NodeRed beinhaltet nicht die manuell installierten Paletten. Das ist groß in einem roten Hinweis"schild" in der Admin-Oberfläche bzw. der Instanz-Konfiguration zu lesen. Warum das so ist, weiß ich allerdings nicht. Ich habe es schlicht nicht beachtet.

                  Unbenannt.PNG

                  Was mir aber mit Abstand am wenigsten gefällt, ist das Neuerstellen eines Containers in Portainer, bei dem man z.B. eine Portweiterleitung vergessen hat. Umständlicher geht's ja nicht. Immer alles neu einstellen. Ports, Netzwerk, Volume, Umgebungsvariablen, ...

                  Nein, das stimmt nicht. In Portainer auf "Duplicate/Edit" klicken, Optionen anpassen/ergänzen, danach auf "Deploy", fertig.

                  🤦

                  Kurzes PS: Ich sehe gerade, dass man sich selbst Templates zusammenschreiben kann, in denen die ganze Konfiguration untergebracht werden kann.

                  Wie gesagt, nicht notwendig.

                  Zu spät, ich habe welche erstellt und bin begeistert 😄

                  Eine Frage bleibt nun aber übrig: Ist das mit dem Zugriff auf die Docker-Volumes normal? Geht das nur über Docker-Befehle, wenn man dort etwas hin und her kopieren möchte? Würde den Kram ja gerne einmal auf Dateiebene sichern...

                  Meine Empfehlung weiter oben war, keine Volumes zu verwenden (sondern "Binds"). Aber selbst, wenn man Volumes nutzt (die nicht auf CIFS/NFS basieren), kann man über den Pfad "/var/lib/docker/volumes/<volume-name>/_data" auf die Daten zugreifen.

                  Mist! Das habe ich wohl falsch verstanden. Ich schaue mal, ob ich das noch umbiegen möchte, sollte nicht der Aufwand sein.

                  Ich melde mich sicher nochmal, bevor wirklich alles rund läuft.

                  PS: Dass DNS in der eigenen Bridge nutzbar ist, ist Gold wert!

                  Marc BergM 1 Reply Last reply
                  0
                  • S Sleepwalker

                    @marc-berg said in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                    @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                    Ich konnte und kann z.B. nicht per Bash auf die Volumes zugreifen. Also war nichts mit "mal eben die Daten vom Host in die Volumes kopieren".

                    Verstehe ich nicht. Siehe weiter unten.

                    Was mich aber etwas mehr Zeit gekostet hat, waren die fehlenden beiden Paletten aus NodeRed, die werden nämlich nicht mitgesichert. Da ich einmal aus Versehen nur eine ähnliche Palette installiert hatte, gab es beim erneuten Installieren der richtigen Palette Probleme (node-red-contrib-suncron != node-red-contrib-cb-suncron). Ein nochmaliges Wiederherstellen vom NodeRed-Backup half dann nur noch.

                    Stimmt, das ist nicht in der ioBoker Sicherung enthalten, aber dazu gibt es ja das zusätzliche Node-Red Backup.

                    Selbst ein Backup von NodeRed beinhaltet nicht die manuell installierten Paletten. Das ist groß in einem roten Hinweis"schild" in der Admin-Oberfläche bzw. der Instanz-Konfiguration zu lesen. Warum das so ist, weiß ich allerdings nicht. Ich habe es schlicht nicht beachtet.

                    Unbenannt.PNG

                    Was mir aber mit Abstand am wenigsten gefällt, ist das Neuerstellen eines Containers in Portainer, bei dem man z.B. eine Portweiterleitung vergessen hat. Umständlicher geht's ja nicht. Immer alles neu einstellen. Ports, Netzwerk, Volume, Umgebungsvariablen, ...

                    Nein, das stimmt nicht. In Portainer auf "Duplicate/Edit" klicken, Optionen anpassen/ergänzen, danach auf "Deploy", fertig.

                    🤦

                    Kurzes PS: Ich sehe gerade, dass man sich selbst Templates zusammenschreiben kann, in denen die ganze Konfiguration untergebracht werden kann.

                    Wie gesagt, nicht notwendig.

                    Zu spät, ich habe welche erstellt und bin begeistert 😄

                    Eine Frage bleibt nun aber übrig: Ist das mit dem Zugriff auf die Docker-Volumes normal? Geht das nur über Docker-Befehle, wenn man dort etwas hin und her kopieren möchte? Würde den Kram ja gerne einmal auf Dateiebene sichern...

                    Meine Empfehlung weiter oben war, keine Volumes zu verwenden (sondern "Binds"). Aber selbst, wenn man Volumes nutzt (die nicht auf CIFS/NFS basieren), kann man über den Pfad "/var/lib/docker/volumes/<volume-name>/_data" auf die Daten zugreifen.

                    Mist! Das habe ich wohl falsch verstanden. Ich schaue mal, ob ich das noch umbiegen möchte, sollte nicht der Aufwand sein.

                    Ich melde mich sicher nochmal, bevor wirklich alles rund läuft.

                    PS: Dass DNS in der eigenen Bridge nutzbar ist, ist Gold wert!

                    Marc BergM Offline
                    Marc BergM Offline
                    Marc Berg
                    Most Active
                    wrote on last edited by
                    #11

                    @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                    Selbst ein Backup von NodeRed beinhaltet nicht die manuell installierten Paletten.

                    Ja und nein. Seit einiger Zeit werden nach Abschluss des Restores alle installiert. Es kann aber sein, dass die entsprechende Backitup-Version noch nicht im Stable Repository ist.

                    NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                    Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                    Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                    S 1 Reply Last reply
                    1
                    • Marc BergM Marc Berg

                      @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                      Selbst ein Backup von NodeRed beinhaltet nicht die manuell installierten Paletten.

                      Ja und nein. Seit einiger Zeit werden nach Abschluss des Restores alle installiert. Es kann aber sein, dass die entsprechende Backitup-Version noch nicht im Stable Repository ist.

                      S Offline
                      S Offline
                      Sleepwalker
                      wrote on last edited by Sleepwalker
                      #12

                      @marc-berg Mahlzeit nochmal!
                      So, ich habe die Dateien aus den Volumes für ioBroker und Influx extrahiert, über einen temporären Container mit Busybox und der Option --volumes-from samt einem Bind über -v
                      Klappte nach etwas Probieren ziemlich gut. Nun sind die Nutzdaten der Container auf dem Host-Dateisystem zugreifbar, sehr gut!

                      Dann habe ich meine Templates für ioBroker und Influx in ein einziges Template verschoben und daraus einen Stack für die beiden erstellt. Die beiden sind jetzt in ihrem eigenen Bridge-Netzwerk und werkeln vor sich hin. Voll super!

                      Jetzt kommt vermutlich AdGuard statt piHole zum Einsatz. Das schiebe ich in sein eigenes Netzwerk und habe das dann isoliert zum ioBroker. Ich freu mich!

                      Jetzt habe ich noch eine Grundlegende Frage zu Containern und Volumes:
                      Mir ist aufgefallen, dass Influx immer ein zweites Volume erstellt, für eine eventuelle Konfiguration. Ich habe lediglich /var/lib/influxdb2 als Bind eingebunden, wie im Quickstart angegeben (https://hub.docker.com/_/influxdb). Das zweite Volume wird automatisch erstellt, kümmert mich aber nicht.

                      Die eigentliche Frage lautet: Ist Docker so intelligent, dass es automatisch Volumes erstellt, sobald ein Container Daten schreiben möchte? Oder ist das irgendwo in den Containern hinterlegt? Das würde ja im Endefeffekt heißen, dass man sich theoretisch überhaupt nicht um Volumes kümmern muss?! Wenn man denn so gar keine Kontrolle behalten möchte...

                      1 Reply Last reply
                      0
                      • Marc BergM Offline
                        Marc BergM Offline
                        Marc Berg
                        Most Active
                        wrote on last edited by
                        #13

                        @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                        Die eigentliche Frage lautet: Ist Docker so intelligent, dass es automatisch Volumes erstellt, sobald ein Container Daten schreiben möchte?

                        Das hat mit Intelligenz nichts zu tun. Beim Erzeugen eines Images kann der Ersteller mitgeben, welche Volumes automatisch erzeugt werden sollen, falls man diese bei der Container-Erstellung nicht explizit angibt. Welche dies sind, kann man z.B. herausfinden, indem man in Portainer unter "Images-->Image layers" schaut. Bei der InfluxDB sieht man dann:

                        263f878e-d8ab-4308-b3a6-7c81baa605a2-grafik.png

                        Für alle anderen geschriebenen Daten gilt das (zum Glück) nicht.

                        Auf diese Weise werden die Daten persistent, auch wenn man vergessen sollte, die Volumes zu mappen.

                        NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                        Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                        S 1 Reply Last reply
                        1
                        • Marc BergM Marc Berg

                          @sleepwalker sagte in Docker: /opt/iobroker, Influxdb2, Backups und mehr?:

                          Die eigentliche Frage lautet: Ist Docker so intelligent, dass es automatisch Volumes erstellt, sobald ein Container Daten schreiben möchte?

                          Das hat mit Intelligenz nichts zu tun. Beim Erzeugen eines Images kann der Ersteller mitgeben, welche Volumes automatisch erzeugt werden sollen, falls man diese bei der Container-Erstellung nicht explizit angibt. Welche dies sind, kann man z.B. herausfinden, indem man in Portainer unter "Images-->Image layers" schaut. Bei der InfluxDB sieht man dann:

                          263f878e-d8ab-4308-b3a6-7c81baa605a2-grafik.png

                          Für alle anderen geschriebenen Daten gilt das (zum Glück) nicht.

                          Auf diese Weise werden die Daten persistent, auch wenn man vergessen sollte, die Volumes zu mappen.

                          S Offline
                          S Offline
                          Sleepwalker
                          wrote on last edited by
                          #14

                          @marc-berg
                          Alles klar, danke für die Erläuterung.

                          AdGuard läuft auch schon in seinem eigenen Stack und Netz und lässt sich über den Hardware-Router ganz einfach ansprechen.

                          Tausend Dank an dich! Jetzt mache ich nur noch meine kleine Doku fertig und dann kann ich peu à peu weitermachen. Vermutlich werde ich bei Gelegenheit mal den Pi plätten und Bookworm drauf machen. Die Backups tun, das weiß ich jetzt. Docker und Portainer sind im Nu installiert und den Rest der Bindings sichere ich mir weg 🙂

                          1 Reply Last reply
                          0
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          Support us

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

                          226

                          Online

                          32.4k

                          Users

                          81.3k

                          Topics

                          1.3m

                          Posts
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          ioBroker Community 2014-2025
                          logo
                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Recent
                          • Tags
                          • Unread 0
                          • Categories
                          • Unreplied
                          • Popular
                          • GitHub
                          • Docu
                          • Hilfe