Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [HowTo] ioBroker unter Docker auf Synology DiskStation

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [HowTo] ioBroker unter Docker auf Synology DiskStation

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

      @gingo79:

      Hallo André,

      Ich habe im frischen Container die Einstellungen importiert, dabei hat er unter Abbild ein neues Image erstellt. Ich hoffe mal das es richtig so ist?

      Wenn ich den Starte, kommt folgende Fehlermeldung und der iobroker startet nicht.

      rm: cannot remove '/var/run/dbus/pid': No such file or directory

      stdout

      12:17:00

      Failed to start message bus: Failed to bind socket "/var/run/dbus/system_bus_socket": Address already in use

      stdout

      12:17:00

      [….] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemon [?25l 7 [1G[ [32m ok [39;49m 8 [?12l [?25h.

      stdout

      12:17:00

      [….] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon [?25l 7 [1G[ [31mFAIL [39;49m 8 [?12l [?25h [31mfailed! [39;49m

      stdout

      12:17:01

      iobroker controller daemon already running. PID: 64

      Beim Instalieren von Docker auf volume1, hat er automatisch einen unter File Station sichtbaren Ordner "docker" erstellt.

      Dieser befindet sich komischer Weise im volume3 und ist leer.

      Ich hoffe die Infos helfen etwas weiter.

      Danke und Gruß

      Gingo79 `

      OK, ich glaube ich war auf dem falschen Weg… Ich hatte angenommen, dass du ein Backup (Export) über ioBroker gemacht hast (http://www.iobroker.net/docu/?page_id=2380&lang=de, erste Frage).

      Wenn ich das jetzt richtig interpretiere, dann hast du aber einen Export über Docker auf der DS gemacht, oder?
      914_export.png
      Mit welchen Optionen? Nur Containereinstellungen oder auch Inhalt?

      Nur Einstellungen reicht nicht aus. Darin sind keine ioBroker-Daten, sondern nur die Einstellungen des Docker-Containers selbst, also Ports, eingehängte Ordner usw… Du hättest nach dem Wiederherstellen also eine leere ioBroker Standardinstallation...

      Ich habe mir eben übrigens gerade mal das Image über Docker neu gezogen (> Registrierung > Image suche > Download > warten).

      Wenn ich daraus dann einen Container starte bekomme ich in der Tat ein ähnliches Log wie du. Irgendetwas mit dem Avahi-Daemon scheint nicht zu stimmen. Aber wie es die letzte Logzeile eigentlich sagt, startet/ läuft iobroker trotzdem. Das ist bei mir auch der Fall.

      Was sagt denn ein:

      cd /opt/iobroker
      iobroker status
      

      im Terminal des neu erstellten Docker Containers?

      Ich werde mich jetzt mal um den Avahi Daemon kümmern und das Image anpassen.

      [EDIT] Ich habe mir das Avahi-Thema einmal angeschaut. Es scheint als könnte man in Docker nur einen Container laufen haben, der den Avahi ausführt. In meinem Test oben, hatte ich einen zweiten Container zum Testen erstellt…

      Wie auch immer, ich habe meinen "produktiv"-Container kurzerhand auf das aktuelle Image aktualisiert... Das Log sah nach dem ersten Start so aus:

      2017-04-18 07:54:54,stdout,rm: cannot remove '/var/run/dbus/pid': No such file or directory
      2017-04-18 07:54:55,stdout,[....] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h.
      2017-04-18 07:54:55,stdout,[....] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h.
      2017-04-18 07:54:56,stdout,Starting iobroker controller daemon...
      2017-04-18 07:54:57,stdout,iobroker controller daemon started. PID: 66
      
      

      Es liefen alle Dienste, inklusive des Avahi, einwandfrei an. Das aktuelle Image ist also ok.

      MfG,

      André

      1 Reply Last reply Reply Quote 0
      • G
        gingo79 last edited by

        Hallo Andre,

        genau, ich habe einen Export über Docker auf der DS gemacht und zwar Containerinhalt und -einstellungen exportieren.

        Wenn ich diesen unter Container über Einstellungen Importiere, produziert er mir unter Abbild ein neues Image und beim starten kommt die Meldung, wie ich bereits in meinen vorherigen Post es eingefügt habe.

        Wenn ich im Terminal des neu erstellten Containers

        cd /opt/iobroker

        iobroker Status

        einegebe, dann kommt

        „iobroker is not running“

        Da iobroker ja eh nicht am laufen ist und nicht weiter komme, habe ich ein Backup im Terminal über iobroker mit ./iobroker backup gemacht.

        Backup created: /opt/iobroker/backups/2017_04_18-15_39_178_backupiobroker.tar.gz

        Hat geklappt, aber wie komme ich jetzt an diese Datei dran bw wie kann ich die verschieben, ich finde sie nirgends und kann ich diese dann irgendwie für das Mounten Benutzen /Advanced Schritte benutzen?

        Habe ich so vielleicht noch eine Chance?

        Denn das Importieren wie oben klappt ja nicht.

        Also wie komme ich auf /opt/iobroker damit ich das sicher kann.

        Wenn es geht, bitte für einen Anfänger in kleinen Schritten. Danke

        gruß

        Gingo79

        1 Reply Last reply Reply Quote 0
        • Schubi
          Schubi last edited by

          du könntest dir in deinem Dockerimage noch den Midnightcommander installieren. (Für alle die DOS großgeworden sind ist der Begriff Nortoncommander sicher noch ein Begriff)

          Auch wenn dir der Begriff nichts sagt - dieses Programm bietet eine sehr einfache Möglichkeit ohne Linuxkentnisse Dateien zu verschieben, kopiern, …

          Du kannst es im Terminal mittelsapt-get install mcinstallieren und dann mit````
          mc

          
          Voraussetztung dass du die Daten aus dem Image herausbekommst ist natürlich ein gemountetes Verzeichnis ausserhalb von Docker.
          
          LG Schubi
          [1904_unbenannt2.jpg](/assets/uploads/files/1904_unbenannt2.jpg)
          1 Reply Last reply Reply Quote 0
          • andre
            andre Developer last edited by

            @gingo79:

            Da iobroker ja eh nicht am laufen ist und nicht weiter komme, habe ich ein Backup im Terminal über iobroker mit ./iobroker backup gemacht.

            Backup created: /opt/iobroker/backups/2017_04_18-15_39_178_backupiobroker.tar.gz

            Hat geklappt, aber wie komme ich jetzt an diese Datei dran bw wie kann ich die verschieben, ich finde sie nirgends und kann ich diese dann irgendwie für das Mounten Benutzen /Advanced Schritte benutzen?

            Habe ich so vielleicht noch eine Chance?

            Denn das Importieren wie oben klappt ja nicht.

            Also wie komme ich auf /opt/iobroker damit ich das sicher kann.

            Wenn es geht, bitte für einen Anfänger in kleinen Schritten. Danke `

            OK. Nichts leichter als das. Also um die Backup-Datei vom container auf die DS zu bekommen benötigst du ein gemountetes Verzeichnis in das du die Datei dann hinein kopierst. Beispiel:

            Im Terminal des Containers einen Transfer-Ordner erstellen

            mkdir /opt/transfer 
            

            Dann den Container stoppen und bearbeiten um ein Verzeichnis zu mounten, dabei ein Verzeichnis auf der DS auswählen und dann den Pfad des Transfer-Ordner im Container eingeben
            914_mounten.png
            Dann Container wieder starten und die Backup-Datei per Terminal in das Verzeichnis kopieren

            cp /opt/iobroker/backups/2017_04_18-20_16_01_backupiobroker.tar.gz /opt/transfer/2017_04_18-20_16_01_backupiobroker.tar.gz 
            

            (Den Dateinamen natürlich entsprechend anpassen). Damit liegt dann die Datei auf de DS im entsprechend gemounteten Verzeichnis.

            Für die Wiederherstellung würde ich dann einen komplett neuen Container aus dem Image heraus starten und prüfen ob die Dienste laufen. Dann die Kopier-Prozedur nochmal in die andere Richtung. Also Ordner anlegen, Container stoppen und bearbeiten, Container starten, Backupdatei vom Transferordner ins ioBroker-Backup-Verzeichnis kopieren…

            Anschließend im Terminal:

            cd /opt/iobroker
            iobroker restore 0
            

            (https://github.com/ioBroker/ioBroker/wi … ker-backup)

            Anschließend prüfen ob der Restore erfolgreich war und ioBroker erstmal wieder zum laufen bekommen. 🙂

            Wenn das geklappt hat, kann man über die gleiche Verfahrensweise (per gemountetem Verzeichnis) nicht nur die einzelne Backup-Datei, sondern den gesamten ioBroker-Ordner auf die DS kopieren. Anschließend das Zielverzeichnis auf der DS in /opt/iobroker mounten und schon liegen die ioBroker-Daten auf der DS und der Container ist nur noch die "Ausführungsumgebung".

            Aktuell bin ich gerade dabei eine ausführliche Anleitung für ioBroker auf Synology DS zu schreiben. Da ist auch dieser Punkt drin. Kann allerdings noch nicht sagen wann ich die raus lassen kann…

            Ich hoffe das hilft so erstmal weiter. Sonst muss ich mal auf anderem Wege ein wenig Nachhilfe geben. Hatte eh mal überlegt soetwas wie eine Websession zu machen...

            Bitte mal Wortmeldung falls das für euch interessant wäre. (Bin allerdings auch erst vor wenigen Wochen in das Docker Thema rein gewachsen) 😉

            MfG,

            André

            1 Reply Last reply Reply Quote 0
            • G
              gingo79 last edited by

              Hallo André,

              super Danke, jetzt sind ein paar Wissens Lücken gestopft.

              Werde damit mal experimentieren.

              Was muss ich denn im Container Terminal eingeben, um das Verzeichnis /opt/iobroker zu kopieren?

              Gruß

              Gingo79

              1 Reply Last reply Reply Quote 0
              • Schubi
                Schubi last edited by

                Mit der Option -r werden auch die Unterverzeichnisse kopiert:

                cp -r /opt/iobroker /opt/transfer 
                
                1 Reply Last reply Reply Quote 0
                • G
                  gingo79 last edited by

                  Yuppie, Backup einspielen hat geklappt und iobroker läuft!

                  Vielen Dank Andre!

                  Komisch das dies nicht über Container Sichern klappte.

                  Jetzt habe ich nur das Problem, das der Adpter VIS nicht anläuft.

                  Beim Aufrufen der Seite kommt: File edit.html Not found: Not exists

                  Gibt es da auch noch was schönes, was ich übern Terminal machen kann?

                  Gruß

                  Gingo79

                  1 Reply Last reply Reply Quote 0
                  • andre
                    andre Developer last edited by

                    @gingo79:

                    Yuppie, Backup einspielen hat geklappt und iobroker läuft!

                    Vielen Dank Andre!

                    Komisch das dies nicht über Container Sichern klappte.

                    Jetzt habe ich nur das Problem, das der Adpter VIS nicht anläuft.

                    Beim Aufrufen der Seite kommt: File edit.html Not found: Not exists

                    Gibt es da auch noch was schönes, was ich übern Terminal machen kann?

                    Gruß

                    Gingo79 `
                    Schön dass es geklappt hat.

                    Was vis angeht würde ich mal im Forum suchen.

                    Vielleicht hilft es vis nochmal neu zu installieren.

                    MfG,

                    Andre

                    Gesendet von meinem D5803 mit Tapatalk

                    1 Reply Last reply Reply Quote 0
                    • G
                      gingo79 last edited by

                      Hallo Andre,

                      nachdem ich die Adapter teilweise mehrmals neu Instaliert habe, läuft iobroker nun den 2. Tag Stabil und ich konnte alle meine Daten retten und wieder neu einspielen.

                      Selbst das Verzeichniss /opt/iobroker ist jetzt gemountet.

                      Nach dem morgentlichen Erwachen der DS, läuft iobroker auch sauber an.

                      Ich denke, das Start Protokoll sieht jetzt auch gut aus, oder?

                      [....] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemonProcess 40 died: No such process; trying to remove PID file. (/var/run/avahi-daemon//pid)
                      
                      [?25l7[1G[[32m ok [39;49m8[?12l[?25h.
                      
                      [....] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h.
                      
                      Starting iobroker controller daemon...
                      
                      iobroker controller daemon started. PID: 66
                      

                      Nochmal ein riesen Dank.

                      mfg

                      gingo79

                      1 Reply Last reply Reply Quote 0
                      • andre
                        andre Developer last edited by

                        @gingo79:

                        Hallo Andre,

                        nachdem ich die Adapter teilweise mehrmals neu Instaliert habe, läuft iobroker nun den 2. Tag Stabil und ich konnte alle meine Daten retten und wieder neu einspielen.

                        Selbst das Verzeichniss /opt/iobroker ist jetzt gemountet.

                        Nach dem morgentlichen Erwachen der DS, läuft iobroker auch sauber an.

                        Ich denke, das Start Protokoll sieht jetzt auch gut aus, oder?

                        [....] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemonProcess 40 died: No such process; trying to remove PID file. (/var/run/avahi-daemon//pid)
                        
                        [?25l7[1G[[32m ok [39;49m8[?12l[?25h.
                        
                        [....] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h.
                        
                        Starting iobroker controller daemon...
                        
                        iobroker controller daemon started. PID: 66
                        

                        Nochmal ein riesen Dank.

                        mfg

                        gingo79 `
                        Hört sich gut an und sieht auch gut aus. 🙂 Freut mich dass es geklappt hat.

                        Ich habe übrigens kürzlich auf Guthaben (https://github.com/buanet/docker-iobroker) unter Scripts schonmal ein Backup-Script hinzugefügt, welches jetzt dann auch im Docker Container unter /opt/scripts liegen sollte.

                        Mit dem Script kann man ein Backup des ioBroker Ordners auf der DS erzeugen. Dazu wird sogar der Container gestoppt und wieder gestartet. Ist zwar noch nicht "offiziell" dokumentiert, funktioniert aber bei mir schon super. 🙂

                        Eine kurze Anleitung zum Script steht direkt in der Datei. Ansonsten muss halt das Script auf die DS kopiert werden, Pfade editieren und dann über den Aufgabenplaner der DS regelmäßig ausgeführt werden. Relativ simpel eigentlich…

                        Vielleicht ja auch was für dich. 🙂 Backup ist ja meist der nächste Schritt wenn einmal läuft 😉

                        MfG, Andre

                        Gesendet von meinem D5803 mit Tapatalk

                        1 Reply Last reply Reply Quote 0
                        • G
                          gingo79 last edited by

                          Hallo Andre,

                          habe das Script gefunden…aber was meinst Du genau damit, das es unter /opt/script liegen sollte.

                          Wenn ich das genau verstanden habe, muss ich folgende Schritte machen:

                          • im Script die Pfade anpassen

                          • auf der DS - Aufgabenplaner - Erstellen - Geplante Aufgabe - Benutzerdefiniertes Script

                          • Script einfügen, Zeitplan wöchentlich einstellen

                          und das war es?

                          gruß

                          gingo79

                          1 Reply Last reply Reply Quote 0
                          • S
                            Superdad last edited by

                            Hallo,

                            wie binde ich ein iOBroker Verzeichnis ein, welches schon auf der DS ist?

                            Bitte für einen erklären, der keine Ahnung von Linux hat.

                            Ich habe unter File Station ein Docker-Verzeichnis. Da ist aber nichts drin.

                            Also komme ich nicht auf docker/iobroker.

                            1 Reply Last reply Reply Quote 0
                            • S
                              Superdad last edited by

                              Ich habe jetzt das iobroker-Verzeichnis in das Docker-Verzeichnis kopiert.

                              Dann habe ich auf das iOBroker-Verzeichnis (bei mir unter /homes/admin/opt/iobroker) gemountet.

                              Jetzt kommt keine Fehlermeldung mehr.

                              Sollte jetzt aber nicht auf der Admin-Oberfläche alle schon installierten Pakete angezeigt werden?

                              Oder muss ich die alle neu installieren?

                              1 Reply Last reply Reply Quote 0
                              • S
                                Superdad last edited by

                                Wenn ich von /docker/iobroker auf opt/iobroker mounte, wo finde ich dann den Ordner opt?

                                Bekomme die Fehlermeldung "sh: 0: Can't open /opt/iobroker/startup.sh".

                                Kann mir bitte jemand helfen?

                                Habe die ganzen Beiträge bestimmt schon 10x gelesen.

                                Und alles ausprobiert.

                                Raffe es einfach nicht. Oder ich mache etwas verkehrt?

                                Hatte mein iOBroker sonst nicht im Docker laufen.

                                Da mir aber die Synology komplett abgeschmiert war und ich froh war, dass ich mit fremder Hilfe, meine Daten wieder herstellen konnte,

                                habe ich mir gedacht, dass ich jetzt den Docker ausprobiere.

                                Meine iOBroker-Ordner sind noch erhalten.

                                Habe diese Ordner in das docker-Verzeichnis, welches auf Volume2 erstellt wurde, kopiert.

                                Und dann, wie oben beschrieben, gemountet.

                                Gruss Superdad

                                1 Reply Last reply Reply Quote 0
                                • andre
                                  andre Developer last edited by

                                  Hallo,

                                  dann will ich's mal versuchen 🙂

                                  @Superdad:

                                  Wenn ich von /docker/iobroker auf opt/iobroker mounte, wo finde ich dann den Ordner opt? `
                                  Der Ordner /opt/iobroker befindet sich dann im Docker Container. Also das Verzeichnis auf der DiskStation (in deinem Fall …/volume2/docker/iobroker) beinhaltet die ioBroker Installation, welche im Docker Container unter dem Pfad /opt/iobroker/ zur Verfügung steht.

                                  Wenn du im Terminal des Docker Containers einmal folgendes eingibst:

                                  cd /opt/iobroker
                                  ls
                                  
                                  

                                  Dann sollte das in etwa so aussehen:
                                  914_terminal.png
                                  Dort siehst du dann warscheinlich auch, dass dir die Datei startup.sh fehlt. Was uns dazu führt…

                                  @Superdad:

                                  Bekomme die Fehlermeldung "sh: 0: Can't open /opt/iobroker/startup.sh". `

                                  Diese Datei wird benötigt, damit ioBroker nach dem Start des Containers startet. Im Normalfall kommt diese Datei mit dem Image aus dem man den Container startet mit. Da du aber deine alte ioBroker-Installation übernimmst, gibt es die Datei dort nicht. Ist aber kein Problem. Du kannst sie dir bei Github ziehen und dann in deinen ioBroker Ordner auf der DS (…/volume2/docker/iobroker) kopieren:

                                  https://github.com/buanet/docker-iobrok … startup.sh

                                  (Von mir aus kannst du auch eine neue Datei mit selben Namen anlegen und nur den Inhalt hinein kopieren…)

                                  Das sollte es schon gewesen sein. Container starten und dann mal schauen ob die Prozesse alle anlaufen...

                                  Viel Erfolg.

                                  MfG,

                                  André

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    Superdad last edited by

                                    Vielen Dank!

                                    Es funktioniert!

                                    Und ich habe nach der startup.sh immer in opt/iobroker geschaut.

                                    Mir ist nicht aufgefallen, dass die in docker/iobroker fehlt!

                                    Kenn mich ebend mit Linux nicht so aus.

                                    Vielen Dank und Gruss

                                    Superdad

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      Superdad last edited by

                                      Hatte heute früh einen Neustart des NAS.

                                      Danach lief der Container nicht automatisch an.

                                      Habe folgende Meldung im Protokoll:

                                      [….] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemonProcess 39 died: No such process; trying to remove PID file. (/var/run/avahi-daemon//pid)

                                      stdout

                                      09:24:35

                                      [?25l7[1G[[32m ok [39;49m8[?12l[?25h.

                                      stdout

                                      09:24:35

                                      [….] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h.

                                      stdout

                                      09:24:37

                                      iobroker controller daemon already running. PID: 65

                                      Nach einem manuellen Neustart läuft es wieder.

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        Superdad last edited by

                                        Kommando zurück!

                                        Läuft doch nicht an!

                                        1 Reply Last reply Reply Quote 0
                                        • andre
                                          andre Developer last edited by

                                          @Superdad:

                                          Hatte heute früh einen Neustart des NAS.

                                          Danach lief der Container nicht automatisch an.

                                          Habe folgende Meldung im Protokoll:

                                          [….] Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemonProcess 39 died: No such process; trying to remove PID file. (/var/run/avahi-daemon//pid)

                                          stdout

                                          09:24:35

                                          [?25l7[1G[[32m ok [39;49m8[?12l[?25h.

                                          stdout

                                          09:24:35

                                          [….] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[?25l7[1G[[32m ok [39;49m8[?12l[?25h.

                                          stdout

                                          09:24:37

                                          iobroker controller daemon already running. PID: 65

                                          Nach einem manuellen Neustart läuft es wieder. `
                                          Die Logeinträge sind ok, normaler Start. Irgendjemand hatte schon mal das Problem mit dem Starten. Bei mir tritt das nicht auf…

                                          Läuft denn der Container nach dem Start nicht an, oder läuft zwar der Container, nicht aber iobroker? Wenn der Container nicht startet, dann ist das ein Docker-Problem.

                                          Dann wäre eine Idee ihn nach dem restart der DS zur Sicherheit nochmal per Script im Aufgabenplaner an zu schubsen. Müsste ich aber selbst erst testen...

                                          MfG, Andre

                                          Gesendet von Unterwegs mit Tapatalk

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            Superdad last edited by

                                            So, habe jetzt noch einmal neu gestartet.

                                            Der Container läuft an.

                                            Unter Prozesse steht alles auf Null.

                                            iObroker läuft also nicht an.

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

                                            Support us

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

                                            403
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            buanet diskstation docker iobroker synology
                                            248
                                            2854
                                            1418113
                                            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