Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Docker - Update vom js-controller?

    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

    Docker - Update vom js-controller?

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

      Hallo,
      wenn ich im (Syno) Docker im Terminal arbeite, stoppt er iob nicht mit der Meldung "controller daemon not running".
      Geht das Update überhaupt über das Terminal?
      Bildschirmfoto 2022-05-01 um 09.30.21.png

      haselchen 1 Reply Last reply Reply Quote 0
      • haselchen
        haselchen Most Active @Humidor last edited by

        @humidor

        Der Befehl lautet pkill -u iobroker

        Humidor 1 Reply Last reply Reply Quote 2
        • Humidor
          Humidor @haselchen last edited by

          @haselchen sagte in Docker - Update vom js-controller?:

          pkill -u iobroker

          danke dir!

          das wäre dann das:
          iob backup
          pkill -u iobroker
          iob update
          iob fix
          iob upgrade self
          iob start

          hat bei mir so nun funktioniert.

          Percy 1 Reply Last reply Reply Quote 2
          • Percy
            Percy @Humidor last edited by

            @humidor Alternativ einfach den Container mit aktuellem Image hochziehen. Dauert 5 Minuten und du hast automatisch alles aktuell. Geht vermutlich mit Portainer einfacher als mit der DSM Docker Oberfläche. Backup aber nicht vergessen 😉

            F 1 Reply Last reply Reply Quote 0
            • F
              fastfoot @Percy last edited by

              @percy jein, ein aktuelles Image ändert nichts am iobroker solange man man den persistenten Ordner /opt/iobroker weiterhin nutzt...

              Percy 1 Reply Last reply Reply Quote 1
              • Percy
                Percy @fastfoot last edited by

                @fastfoot stimmt, beim js-controller hast du vermutlich recht. Wenn ich mich richtig an meine letzten Updates erinnere, haben sich Node.js und NPM aber zumindest immer automatisch mit dem Container aktualisiert.

                Humidor F 2 Replies Last reply Reply Quote 0
                • Humidor
                  Humidor @Percy last edited by

                  @percy Portainer, ist das Image immer aktuell?
                  Verstehe noch nicht wie Portainer funktioniert, würdest du mich da bitte ev. leiten?

                  1 Reply Last reply Reply Quote 0
                  • F
                    fastfoot @Percy last edited by

                    @percy sagte in Docker - Update vom js-controller?:

                    haben sich Node.js und NPM aber zumindest immer automatisch mit dem Container aktualisiert.

                    das wiederum ist richtig, auch das OS wurde irgendwann von Buster auf Bullseye angehoben. Ich wollte nur klar stellen dass alleine der Container nicht alle Updates automatisch erledigt.

                    Percy 1 Reply Last reply Reply Quote 0
                    • Percy
                      Percy @fastfoot last edited by

                      @fastfoot danke für die Klarstellung 👍

                      @Humidor Portainer ist ein Tool zum Verwalten von Docker-Containern. Du machst das bisher über die DSM-App von Synology. Die ist nicht verkehrt, Portainer bietet aber umfangreichere Möglichkeiten - insbesondere, was das einfache Aktualisieren von Containern angeht. Sowohl die DSM-App als auch Portainer greifen auf den Docker-Daemon auf deiner Synology zurück. Vereinfacht ausgedrückt ist Portainer nur eine andere Nutzeroberfläche. Setzt du einen Container über Portainer neu auf, wirst du ihn auch in der DSM-Docker App sehen und umgekehrt. Beide können parallel genutzt werden. Einfach Portainer als Docker-Container hinzufügen und über das eigene Web-Interface aufrufen:
                      https://hub.docker.com/r/portainer/portainer

                      Konkret meine ich folgende Funktion: Im Portainer kannst du beim editieren eines Containers das docker.io Image anpassen. Trägst du hier ein aktuelleres ein und bestätigst es, wird dein ioBroker Container automatisch mit dem neuen Image generiert. Alle Nutzerdaten bleiben erhalten, aber der Unterbau wird aktualisiert, inkl. Node.js, NPM und der Linux Basis. Bei diesen Themen musst du dich also nicht mehr mit Aktualisierungen herumschlagen

                      bcd784b9-3186-4d9a-82ba-1cd96f1b3f01-image.png

                      Trotzdem empfehle ich vorher ein Backup zu machen (das geht tatsächlich einfacher über die DSM-Docker App, da du hier auch die Nutzerdaten - also das Volume - direkt mitsichern kannst.)

                      Hoffe, das hilft dir weiter

                      Humidor 2 Replies Last reply Reply Quote 0
                      • Humidor
                        Humidor @Percy last edited by

                        @percy super, danke, verstehe soweit, Umsetzung folgt

                        im Docker ist das Backup das Exportieren?
                        Bildschirmfoto 2022-05-02 um 06.37.40.png

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          simplyclever @Humidor last edited by

                          Ich bin extrem vorsichtig bzgl. Backup und Restore. Deswegen ja mein Plan, die SSD zu klonen.
                          Das macht man ja eher sleten, weil das Zeitintensiv ist.
                          Täglich sichere ich daher in iobroker selber (BackItUp) und per https://github.com/muesli/docker-backup die Volumes auf mein Fritz-NAS und lade die nach OneDrive hoch.

                          Der Frage oben schliesse ich mich an: Kann man relativ einfach ein komplettes Backup (Volume und Image) per DSM machen? Und entsprechend natürlich ein Restore. Habe natürlich im Netz gesucht, aber irgendwie nicht das richtige gefunden.

                          Ja ich weiss, das Image muss man eigentlich nicht sichern. Mir gefällt nur der Gedanke, alles was für ein Restore nötig ist lokal (und extern) auf dem NAS zu halten, so dass man zur Not sofort ein Restore triggern kann ohne erst Download(s) zu starten.

                          Percy 1 Reply Last reply Reply Quote 0
                          • Percy
                            Percy @simplyclever last edited by

                            Ja, ein Full-Backup für den Docker ist - zumindest auf der Synology - grundsätzlich möglich.

                            Ich persönlich setze hier nicht auf ein einziges Pferd. Generell aktualisiere ich Adapter nur nach einem Backup, z.B. alle 1-2 Monate. So habe ich immer einen sauberen Stand und "zerschieße" mir nicht versehentlich im laufenden Betrieb etwas durch ein Update (kommt selten vor, ist aber schon passiert). Vom Vorgehen her mache ich es wie folgt:

                            1.) Sicherstellen, dass es ein Backitup Full Backup gibt. Dieses muss nicht zwangsläufig manuell gesichert werden, da es sich im ioBroker Ordner befindet und damit bei den nächsten Schritten mitgespeichert wird
                            2.) Über DSM den Container exportieren und dabei auswählen, dass die Containerdaten mitgespeichert werden sollen. Das ist wichtig, da so auch das opt/iobroker Verzeichnis mitgespeichert wird und damit die Nutzerdaten. Die Datenmenge steigt aber auch dementsprechend. Nicht wundern, kann gerne mal eine halbe Stunde dauern.
                            3.) Eine Kopie des Container-Volumes (opt/iobroker) erstellen. Sollte eigentlich nicht nötig sein, aber bei Problemen kann das genutzt werden, um Daten besonders einfach wiederherzustellen.
                            4.) im Portainer den Container stoppen und über "Duplicate/Edit" ein Duplikat mit aktuellem Image erzeugen. Das geschieht vollautomatisch unter Beibehaltung aller Container-Einstellungen, indem einfach die Image-Version angepasst wird und (ganz wichtig) der Name des Containers geändert wird (ansonsten ist es ein "edit" und kein "duplicate")

                            Sollte der neue Container nicht sauber hochfahren (hatte ich bisher noch nie) oder einzelne Adapter mit der Node.js/NPM/Linux Umstellung Probleme haben (kann schon eher mal passieren), kann man einfach den alten Stand wiederherstellen. Im ersten Schritt stoppe ich den Container und starte den alten (siehe Schritt 4). Im Idealfall läuft jetzt alles so wie vorher, außer es gab bereits gravierende Änderungen am opt/iobroker Verzeichnis. In diesem Fall kann man entweder das backitup backup (Schritt 1), das opt/iobroker Verzeichnis-Backup (Schritt 3) oder das DSM-Container Backup (Schritt 2) nutzen. Selbst wenn hier eine Backup-Methode mal versagt, spätestens die zweite regelt es.

                            Meine Methode mag vielleicht umständlich sein und ein paar Dinge doppelt speichern. Dafür habe ich im Fall von Problemen vielfältige Möglichkeiten, die Daten wiederherzustellen.

                            @simplyclever Das Müsli-Docker Backup kenne ich noch gar nicht, schau ich mir aber auch mal an, sieht interessant aus 🙂

                            S 1 Reply Last reply Reply Quote 1
                            • S
                              simplyclever @Percy last edited by

                              @percy
                              2. DSM: Ist das spezifisch für Synology?
                              4. Duplicate Verständnisfrage: /opt/iobroker wird ja auf /var/lib/docker/volumes/iobrokerdata/_data gemountet.
                              Bei Duplicate: Wird das Volume kopiert? Oder wird im neuen Container nicht das gleiche Verzeichnis benutzt?
                              Der Mount point (Volume mapping) ändert sich ja nicht.

                              Dito, mache auch einiges evtl. zu viel, aber ich bin lieber auf der sicheren Seite.

                              Percy 1 Reply Last reply Reply Quote 0
                              • Percy
                                Percy @simplyclever last edited by

                                @simplyclever
                                2.: Ja, das ist eine Funktion der Synology DSM Docker Applikation. Ob das nativ mit Docker in der Kommandozeile geht, weiß ich nicht. Grundsätzlich klingt das müsli-Backup aber nach genau dieser Funktion, auch hier wird ein .tar Archiv erstellt, welches alle Daten enthält

                                zu 4.: Bei Duplicate wird nur der Container dupliziert, alle Einstellungen (und damit auch das gemountete Volume) bleiben erhalten. D.h. der neue Container greift auf das bestehende Volume zu.

                                1 Reply Last reply Reply Quote 1
                                • Humidor
                                  Humidor @Percy last edited by Humidor

                                  @percy sagte in Docker - Update vom js-controller?:
                                  Einfach Portainer als Docker-Container hinzufügen und über das eigene Web-Interface aufrufen:

                                  https://hub.docker.com/r/portainer/portainer

                                  das ist der Aufruf der Docker Web Domain? den Container am NAS wird man mit IP:xxx verm. erreichen

                                  mit welchen Settings startet man den Container Portainer?

                                  Percy 1 Reply Last reply Reply Quote 0
                                  • Percy
                                    Percy @Humidor last edited by

                                    @humidor nein, das ist der Verweis auf das Docker Image. Und von mir falsch noch obendrein, denn das aktuelle Image wird unter https://hub.docker.com/r/portainer/portainer-ce geführt. Die Portainer-Instanz in deinem Netzwerk erreichst du später unter der IP mit Port 9000.

                                    Bei der Installation muss man ein paar Dinge beachten, aber es gibt gute Anleitungen:
                                    https://www.portainer.io/blog/how-to-install-portainer-on-a-synology-nas oder für QNAP (auf die Schnelle rausgesucht, gibt sicher noch viele weitere)
                                    https://www.youtube.com/watch?v=mIhPfMmiUB4

                                    Portainer hat ein paar coole Features, wie z.B. MAC-Vlan. Damit kannst du den Docker-Containern eigene IP-Adressen geben. Über die Synology DSM-Docker App lassen sich die Container ja nur mit Host-IP anlegen und dann eben über eigene Ports aufrufen. Im Portainer kannst du einen Container auch mit eigener IP anlegen und entsprechend im Netzwerk erreichen.
                                    QNAP unterstützt das MAC-Vlan glaube ich bereits, hier ist man etwas weiter als bei Synology. Portainer läuft aber auch dort und bietet gewisse Vorteile, z.B. beim erwähnten duplizieren/editieren von Containern.

                                    Humidor 1 Reply Last reply Reply Quote 1
                                    • Humidor
                                      Humidor @Percy last edited by

                                      @percy hab da mal probiert, laufe in einen Port Fehler, wie gebe ich einen anderen ein, beide zahlen auf Bsp. 8010:8010 ?

                                      sudo docker run -p 8000:8000 -p 9000:9000 --detach --name=portainer-ce --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /volume1/docker/portainer-ce:/data portainer/portainer-ce
                                      Unable to find image 'portainer/portainer-ce:latest' locally
                                      latest: Pulling from portainer/portainer-ce
                                      772227786281: Pull complete 
                                      96fd13befc87: Pull complete 
                                      b3238bddfe78: Pull complete 
                                      Digest: sha256:3ff080a0cd2a45bd0bde046069973b3fe642c3e4d43c5b429dd7b77f0057c7d7
                                      Status: Downloaded newer image for portainer/portainer-ce:latest
                                      c8edbec5b6f6cfacd76dc53ef758dea3ec5963a5dbba1369f3c6c6e84a9bff31
                                      docker: Error response from daemon: driver failed programming external connectivity on endpoint portainer-ce (6f3374e8018af51399cf375df284e1d2487d7bf3451ede31501703661ad59bdc): Error starting userland proxy: listen tcp4 0.0.0.0:9000: bind: address already in use.
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • OliverIO
                                        OliverIO last edited by

                                        @humidor sagte in Docker - Update vom js-controller?:

                                        sudo docker run -p 8000:8000 -p 9000:9000 --detach --name=portainer-ce --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /volume1/docker/portainer-ce:/data portainer/portainer-ce

                                        Durch die foglende Befehlszeile ist Portainer dann unter Port 9100 erreichbar.

                                        sudo docker run -p 8000:8000 -p 9100:9000 --detach --name=portainer-ce --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /volume1/docker/portainer-ce:/data portainer/portainer-ce
                                        

                                        hier noch die Alternative für docker-compose, auf Basis der genannten Befehlszeile

                                        version: '2'
                                        
                                        services:
                                          portainer:
                                            image: portainer/portainer-ce
                                            command: -H unix:///var/run/docker.sock
                                            restart: always
                                            ports:
                                              - 9100:9000
                                              - 8000:8000
                                            volumes:
                                              - /var/run/docker.sock:/var/run/docker.sock
                                              - /volume1/docker/portainer-ce:/data
                                        
                                        
                                        
                                        Humidor 1 Reply Last reply Reply Quote 2
                                        • Humidor
                                          Humidor @OliverIO last edited by

                                          @oliverio super danke, was ist denn docker compose?

                                          OliverIO 1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @Humidor last edited by

                                            @humidor
                                            https://docs.docker.com/compose/
                                            Ein Tool von docker bei dem die start Parameter in eine Textdatei im yaml Format in einem eigenen Verzeichnis geschrieben wird.
                                            Wenn man dann in dem Verzeichnis bspw
                                            docker-compose up ausführt wird der Container gestartet.

                                            Kann dann 1:1 in portainer verwendet werden, nennt sich dort stacks

                                            Humidor 1 Reply Last reply Reply Quote 3
                                            • First post
                                              Last post

                                            Support us

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

                                            544
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            24
                                            2556
                                            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