Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Installation
    5. Bekomme ioBroker im Docker nicht restauriert

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Bekomme ioBroker im Docker nicht restauriert

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tasuanetrukiat last edited by

      Hallo,

      ich versuche mich kurz zu halten.

      Ich wollte ioBroker testen um zu sehen ob es meine Tasmota-Werte empfangen und speichern kann.
      Da ich einen XENServer besitze habe ich ein neue DomU mit Debian 12 installiert.
      Dort wurde Docker installiert und rudimentär getestet.
      Dann wurde nach der Anleitung ioBroker für Docker erst mal ioBroker gestartet:

      docker run -p 8081:8081 -p 1883:1883 -p 1884:1884 --name iobroker -h iobroker  buanet/iobroker
      

      Die Ersteinrichtung war erfolgreich.
      Ich konnte auch das MQTT Modul installieren und alle Werte wurden mittels dem Scriptkram empfangen.
      Ich habe dann noch ein Modul für die Auswertung installiert und auch dort sah es gut aus.
      Dann kam noch ein Modul zum Anzeigen von Graphen hinzu.

      Nach ein paar Tagen war ich soweit zufrieden. Bei einem Zugriff ist dann aber aufgefallen das auch der Port 8082 benötigt wird. Dazu muss aber wohl der Docker neu mit run gestartet werden.
      Da das ganze noch nicht neustartsicher war habe ich mit dem BackIt Modul ein Komplettbackup erstellt.
      Die Backupdatei habe ich aus dem Docker-Container heraus kopiert.

      Wegen eines Stromausfalls wurde dann der XENServer und dessen DomU alle herunter gefahren.
      Nach der Wiederherstellung wurde alles wieder gestartet. Wie zu erwarten war, war aber der ioBroker-Container wieder zurückgesetzt und die Konfiguration wurde erneut gestartet.

      Ich habe dann den Container und dessen Images entfernt und den Container nun mit zusätzlichem Portmapping und einem Stammverzeichnis für die Dockerdaten gestartet, damit diese nicht bei einem neuen Docker-/Containerstart verloren gehen:

      docker run -p 8081:8081 -p 8082:8082 -p 1883:1883 -p 1884:1884 -v iobrokerdata:/opt/iobroker --name iobroker -h iobroker  buanet/iobroker
      

      Nach dem Start habe ich das außerhalb des Containers gespeicherte Backup in den Container kopiert und soweit die Grundeinrichtung durch geklickt bis ich mittels BackItUp Modul die Sicherung einspielen konnte.
      Es gab keine Fehlermeldung, aber ein Hinweis das zum Abschluss ioBroker neu gestartet werden muss.
      Nach einiger Zeit war der Container scheinbar gestoppt. Die letzten Meldungen waren

      --------------------------------------------------------------------------------
      -----                    Step 5 of 5: ioBroker startup                     -----
      --------------------------------------------------------------------------------
      
      Starting ioBroker...
      
      ##### #### ### ## # iobroker.js-controller log output # ## ### #### #####
      host.iobroker check instance "system.adapter.admin.0" for host "iobroker"
      host.iobroker check instance "system.adapter.discovery.0" for host "iobroker"
      host.iobroker check instance "system.adapter.backitup.0" for host "iobroker"
      ================================== > LOG REDIRECT system.adapter.admin.0 => true [system.adapter.admin.0.logging]
      Send diag info: {"uuid":"a8ac15b0-c379-48fb-8dd9-12f61cc7f059","language":"de","country":"","hosts":[{"version":"4.0.24","platform":"Javascript/Node.js","type":"linux"}],"node":"
                                                                                                                                                                                       k
                                                                                                                                                                                       Y
                                                                                                                                                                                       }
      
      
      
      ================================== > LOG REDIRECT system.adapter.admin.0 => false [Process stopped]
      ================================== > LOG REDIRECT system.adapter.admin.0 => false [system.adapter.admin.0.logging]
      Terminated
      
      Recived termination signal (SIGTERM).
      Shutting down ioBroker...
      
      

      Ich habe diesen versucht zu starten und kann mittels exec auch wieder in den Container.
      Aber weder ist der Webserver auf Port 8081 zu erreichen noch sehe ich das etwas vom iobroker läuft.

      Was mache ich falsch? Soltte nach dem Restore des Backups und den Neustart nicht alles wieder laufen?
      Ich habe nun mehrere Tage auch gewartet ob sich noch etwas tut aber am Zustand scheint sich nichts zu ändern. Auch sehe ich nicht, das sich seit dem was in irgendwelchen Logs getan hat.
      Alerdings scheint zumindest ein script zu laufen:

      root@docker:~# docker exec iobroker ps -ext
          PID TTY      STAT   TIME COMMAND
            1 ?        Ss     0:00 bash /opt/scripts/iobroker_startup.sh HOSTNAME=iobroker LANGUAGE=de_DE:de PWD=/opt/iobroker SETUID=1000 TZ=Europe/Berlin HOME=/root LANG=de_DE.UTF-8h
          136 ?        Sl    64:57 iobroker.js-controller
       716168 ?        Rs     0:00 ps -ext PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin HOSTNAME=iobroker DEBIAN_FRONTEND=teletype LANG=de_DE.UTF-8 LANGUAGE=de_DE
      root@docker:~# docker exec iobroker top -b
      top - 15:20:53 up 14 days,  4:40,  0 users,  load average: 0,06, 0,05, 0,01
      Tasks:   4 total,   1 running,   3 sleeping,   0 stopped,   0 zombie
      %Cpu(s):  5,9 us,  5,9 sy,  0,0 ni, 88,2 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
      MiB Mem :   1960,2 total,     78,9 free,    260,6 used,   1620,6 buff/cache
      MiB Swap:   4096,0 total,   4095,7 free,      0,2 used.   1668,8 avail Mem
      
          PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
       716357 root      20   0   10176   3704   3296 R   6,7   0,2   0:00.02 top
            1 root      20   0    7372   3500   3156 S   0,0   0,2   0:00.05 bash
          136 iobroker  20   0  900220 128496  39320 S   0,0   6,4  64:57.67 iobroke+
       716337 root      20   0   10176   3616   3212 S   0,0   0,2   0:00.02 top^C
      root@docker:~# 
      

      Funktioniert das Backup Restore denn überhaupt? Angeblich soll ja nur da mit dem Modul erzeugte Backup für ein vollständigen Restore reichen.

      Ich bin noch recht neu was Docker betrifft. Daher könnte ja auch da irgendwie der Hund begraben sein.

      Da ich ja nur noch die Backupdatei habe kann ich den Container auch noch ein weiteres mal neu einrichten, aber ich glaube nicht das das viel bringt.

      Möglicherweise ist meine Einordnung des Problems in „Installation“ nicht ganz korrekt aber meiner Ansicht nach auch nicht ganz falsch.

      Danke schon mal für die Hilfe.

      T 1 Reply Last reply Reply Quote 0
      • T
        tasuanetrukiat @tasuanetrukiat last edited by tasuanetrukiat

        @tasuanetrukiat sagte in Bekomme ioBroker im Docker nicht restauriert:

        noch sehe ich das etwas vom iobroker läuft.

        und

        Alerdings scheint zumindest ein script zu laufen:

        Es läuft doch ein wenig mehr; als Prozess 136.

        T 1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators last edited by

          Ich kenne mich mit Docker nicht aus. Ist zu komplex für mich.

          Aber das klingt für mich nicht richtig.

          @tasuanetrukiat sagte in Bekomme ioBroker im Docker nicht restauriert:

          Nach dem Start habe ich das außerhalb des Containers gespeicherte Backup in den Container kopiert

          für den Restore von ioBroker bei Docker gibt es meines Wissens ein bestimmtes Procedere.

          T 1 Reply Last reply Reply Quote 0
          • T
            tasuanetrukiat @Homoran last edited by

            @homoran Ok, habe das hier gefunden.
            Der einzige Unterschied den ich ich zu Methode 2 gemacht hatte war das ich die Backupdatei erst nach dem starten des Containers in diesen kopieren konnte und den Restore von Hand anstoßen musste und damit nicht den autorestore der da beschrieben steht verwendet habe.
            Mal sehen wie ich die Datei sauber in das Image vor dem neuen ersten docker run … bekomme.

            Marc Berg 1 Reply Last reply Reply Quote 0
            • T
              tasuanetrukiat @tasuanetrukiat last edited by

              @tasuanetrukiat Es scheint noch mehr zu laufen. In folgender Datei werden regelmäßig Einträge ergänzt:

              root@docker:~# docker exec -it iobroker cat /opt/iobroker/iobroker-data/states.jsonl |jq . |tail
                "k": "system.host.17e9c2544f30.cputime",
                "v": {
                  "val": 3907.44,
                  "ack": true,
                  "ts": 1689774913683,
                  "q": 0,
                  "from": "system.host.17e9c2544f30",
                  "lc": 1689774913683
                }
              }
              

              Vielleicht läuft ja nur der Webservice nicht, aber die MQTT Nachrichten kommen weiterhin rein. Eine Idee wie ich das prüfen kann bevor ich alles platt mache?

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

                @tasuanetrukiat sagte in Bekomme ioBroker im Docker nicht restauriert:

                Mal sehen wie ich die Datei sauber in das Image vor dem neuen ersten docker run … bekomme.

                Diese Funktionalität wurde mit dem 8er Image entfernt, den Versuch kannst du dir sparen.
                https://github.com/buanet/ioBroker.docker/blob/main/CHANGELOG.md#v800-20032023

                Ggf. heißt der Host anders als vorher, das müsstest du mit

                iobroker host this
                

                fixen, gefolgt von einem

                iobroker start all
                
                T 1 Reply Last reply Reply Quote 0
                • T
                  tasuanetrukiat @Marc Berg last edited by tasuanetrukiat

                  @marc-berg sagte in Bekomme ioBroker im Docker nicht restauriert:

                  iobroker host this

                  Es war mir nicht möglich den iobroker regulär mit einem iobroker stop all so zu stoppen das der iobroker host this funktioniert hätte.
                  Erst nach ein kill auf den Prozess 136 war dann der Befehl erfolgreich.
                  Es sah aber so aus als würde vorher auch schon der name des host „iobroker“ gewesen sein.
                  Der Start danach hat jederfalls funktioniert und es wurden mehr Adapter gestartet als vorher gestoppt wurden.

                  root@docker:~# docker exec -it iobroker iobroker stop all   
                  root@docker:~# docker exec -it iobroker iobroker host this
                  Cannot execute changes on running system. Stop iobroker first.
                  root@docker:~# docker exec -it iobroker kill 136
                  root@docker:~# docker exec -it iobroker iobroker host this
                  Host "17e9c2544f30" successfully renamed to "iobroker".
                  The host for instance "system.adapter.admin.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.discovery.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.backitup.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.history.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.jarvis.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.javascript.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.javascript.1" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.mqtt.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.valuetrackerovertime.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.vis-history.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.vis.0" was changed from "iobroker" to "iobroker".
                  The host for instance "system.adapter.web.0" was changed from "iobroker" to "iobroker".
                  root@docker:~# docker exec -it iobroker iobroker start all
                  The adapter "admin.0" was started.
                  The adapter "history.0" was started.
                  The adapter "javascript.0" was started.
                  The adapter "javascript.1" was started.
                  The adapter "mqtt.0" was started.
                  The adapter "discovery.0" was started.
                  The adapter "backitup.0" was started.
                  The adapter "jarvis.0" was started.
                  The adapter "valuetrackerovertime.0" was started.
                  The adapter "vis-history.0" was started.
                  The adapter "vis.0" was started.
                  The adapter "web.0" was started.
                  root@docker:~# docker exec iobroker top -b
                  top - 19:28:46 up 14 days,  8:48,  0 users,  load average: 0,03, 0,07, 0,03
                  Tasks:   5 total,   1 running,   4 sleeping,   0 stopped,   0 zombie
                  %Cpu(s):  0,0 us,  0,0 sy,  0,0 ni,100,0 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
                  MiB Mem :   1960,2 total,    197,8 free,    178,5 used,   1583,9 buff/cache
                  MiB Swap:   4096,0 total,   4095,7 free,      0,2 used.   1751,0 avail Mem 
                  
                      PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
                        1 root      20   0    7372   3512   3156 S   0,0   0,2   0:00.05 bash
                   716337 root      20   0   10176   3616   3212 S   0,0   0,2   0:02.68 top
                   716357 root      20   0   10176   3704   3296 S   0,0   0,2   0:02.56 top
                   729232 root      20   0    5740    500    436 S   0,0   0,0   0:00.01 tail
                   729618 root      20   0   10176   3600   3200 R   0,0   0,2   0:00.02 top
                  
                  

                  Leider ist kein Prozess zu sehen wie vor dem kill und der Browser meldet auch nur „This site can’t be reached“
                  Vielleicht muss ich nun einfach warten, aber wäre schon schön man könnte irgendwo etwas sehen.

                  T Marc Berg 2 Replies Last reply Reply Quote 0
                  • T
                    tasuanetrukiat @tasuanetrukiat last edited by

                    @tasuanetrukiat Ich hatte noch mal einen

                    root@docker:~# docker exec -it iobroker iobroker fix
                    

                    laufen gelassen.
                    Danach hat sich immer noch nichts getan, also habe ich mit

                    root@docker:~# docker container stop cbb675da5a5d
                    root@docker:~# docker container start cbb675da5a5d
                    

                    den Container noch mal neu gestartet. Danach hat es ein wenig gedauert aber das Web-Interface ist seit dem wieder erreichbar und es scheint auf den ersten Blick alles zu laufen.

                    Ich werde mal ein neues Backup ziehen und in einem anderen Container das nochmal versuchen zu repizieren damit man weis was wirklich notwendig war.

                    Danke für die Hilfe.

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

                      @tasuanetrukiat sagte in Bekomme ioBroker im Docker nicht restauriert:

                      Es sah aber so aus als würde vorher auch schon der name des host „iobroker“ gewesen sein.

                      Nö.

                      Host "17e9c2544f30" successfully renamed to "iobroker".
                      
                      T 1 Reply Last reply Reply Quote 0
                      • T
                        tasuanetrukiat @Marc Berg last edited by

                        @marc-berg Ah ok. Die Zeile hatte ich glatt überlesen.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        650
                        Online

                        31.7k
                        Users

                        79.7k
                        Topics

                        1.3m
                        Posts

                        backitup restore
                        3
                        10
                        413
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo