Skip to content
  • Home
  • 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
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Docker Container über Script täglich neu starten

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    899

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Docker Container über Script täglich neu starten

Scheduled Pinned Locked Moved Skripten / Logik
17 Posts 6 Posters 1.3k Views 5 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.
  • M Offline
    M Offline
    Matze1909
    wrote on last edited by
    #1

    Moin,

    ich habe über Portainer zwei Docker Container laufen:

    • ioBroker
    • PSA Car Controller

    Leider hängt sich der PSA Car Controller regelmäßig auf ohne dass er auf einen Fehler läuft, so dass ich ihn gerne jeden Tag neu starten lassen würde.
    Nun meine Fragen:

    Kann ich über ein Script im ioBroker auf den PSA Docker zugreifen und diesen täglich neustarten lassen?
    Wenn nicht, wie kann ich ansonsten einstellen, dass sich der PSA Docker täglich neustartet
    Im Portainer habe ich leider keine entsprechende Funktion gefunden.

    Vielen Danke für eure Hilfe.
    Matze

    haselchenH OliverIOO 2 Replies Last reply
    0
    • M Matze1909

      Moin,

      ich habe über Portainer zwei Docker Container laufen:

      • ioBroker
      • PSA Car Controller

      Leider hängt sich der PSA Car Controller regelmäßig auf ohne dass er auf einen Fehler läuft, so dass ich ihn gerne jeden Tag neu starten lassen würde.
      Nun meine Fragen:

      Kann ich über ein Script im ioBroker auf den PSA Docker zugreifen und diesen täglich neustarten lassen?
      Wenn nicht, wie kann ich ansonsten einstellen, dass sich der PSA Docker täglich neustartet
      Im Portainer habe ich leider keine entsprechende Funktion gefunden.

      Vielen Danke für eure Hilfe.
      Matze

      haselchenH Offline
      haselchenH Offline
      haselchen
      Most Active
      wrote on last edited by
      #2

      @matze1909

      Möchtest Du dem Problem nicht auf die Spur kommen, bevor Du da irgendwelche Krücken benutzt?

      Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

      M 1 Reply Last reply
      1
      • M Matze1909

        Moin,

        ich habe über Portainer zwei Docker Container laufen:

        • ioBroker
        • PSA Car Controller

        Leider hängt sich der PSA Car Controller regelmäßig auf ohne dass er auf einen Fehler läuft, so dass ich ihn gerne jeden Tag neu starten lassen würde.
        Nun meine Fragen:

        Kann ich über ein Script im ioBroker auf den PSA Docker zugreifen und diesen täglich neustarten lassen?
        Wenn nicht, wie kann ich ansonsten einstellen, dass sich der PSA Docker täglich neustartet
        Im Portainer habe ich leider keine entsprechende Funktion gefunden.

        Vielen Danke für eure Hilfe.
        Matze

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        wrote on last edited by
        #3

        @matze1909

        Der iobroker Container liefert ein Health Status
        So kann man neustarten wenn der healthstatus sich ändert

        https://stackoverflow.com/questions/47088261/restarting-an-unhealthy-docker-container-based-on-healthcheck

        Generell sollte man aber das Grundübel abstellen
        Den Container evtl mal auf debug stellen und das Container log prüfen

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

        1 Reply Last reply
        1
        • haselchenH haselchen

          @matze1909

          Möchtest Du dem Problem nicht auf die Spur kommen, bevor Du da irgendwelche Krücken benutzt?

          M Offline
          M Offline
          Matze1909
          wrote on last edited by
          #4

          @haselchen und @oliverio
          vielen Dank für eure Antworten.
          Ich meine, dass der Container nicht auf unhealthy geht. Ich werde aber das nächste mal, wenn die url des PSA Car Controllers nicht erreichbar ist, den Status prüfen und mir den Log anschauen.
          Ich vermute, dass es an der "mittelmäßigen" Api zu PSA/Stellentis liegt, dass hier hin und wieder die Verbindung verloren geht und keine Daten abgefragt/geliefert werden. Ich bin mir aber nicht sicher. Vielleicht helfen mir die Daten aus dem Log weiter.
          Auf jeden Fall hat es immer sofort funktioniert, wenn der Container neu gestartet wurde. Daher dachte ich, dass dies die Lösung ist.
          Ich melde mich wieder, wenn ich Neuigkeiten haben.
          Dennoch wäre ich daran interessiert, ob es eine Möglichkeit gibt über ein Script einen "anderen" Container neu zu starten. Es müsste auch gar nicht zwingend täglich sein. Mir würde auch "bei Bedarf" reichen. Ich würde dann das Script mit meiner Alexa verbinden und immer wenn die URL nicht erreichbar ist, über einen Sprachbefehl den Container neu starten. Das geht viel schneller, als die Anmeldung bei Portainer, Auswahl des Containers, Neustart etc..

          Vielen Dank und viele Grüße
          Matze

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

            @matze1909 sagte in Docker Container über Script täglich neu starten:

            Dennoch wäre ich daran interessiert, ob es eine Möglichkeit gibt über ein Script einen "anderen" Container neu zu starten.

            Das geht, aber natürlich nur, indem man die Sicherheits-/Isolationsfunktionen abschaltet.

            1. /var/run/docker.sock in den ioB-Container durchreichen (wie ein Volume)
            2. Das Node-Module "dockerode" in den Javascript-Adapter einbinden
            3. Beispiel-Skript:
            var Docker = require('dockerode');
            var docker = new Docker({socketPath: '/var/run/docker.sock'});
            
            var container = docker.getContainer('grafana2');
            
            container.stop((err, data) => {
              if (err) {
                console.error('Stoppen fehlgeschlagen:', err);
                return;
              }
              console.log('Container gestoppt');
              
              setTimeout(() => {
                container.start((startErr, startData) => {
                  if (startErr) {
                    console.error('Starten fehlgeschlagen:', startErr);
                    return;
                  }
                  console.log('Container gestartet');
                });
              }, 2000);  // 2 Sekunden Pause zwischen Stop und Start
            });
            
            

            Alternativ zum Mappen des Sockets kann man auch über die API auf den Docker-Host zugreifen:

            var docker = new Docker({host: 'http://<dockerhost>', port: <dockerport>});
            

            Dann musst du aber den API-Zugriff zulassen, was eine noch größere Lücke darstellt.

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

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

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

            M 1 Reply Last reply
            1
            • M Matze1909

              @haselchen und @oliverio
              vielen Dank für eure Antworten.
              Ich meine, dass der Container nicht auf unhealthy geht. Ich werde aber das nächste mal, wenn die url des PSA Car Controllers nicht erreichbar ist, den Status prüfen und mir den Log anschauen.
              Ich vermute, dass es an der "mittelmäßigen" Api zu PSA/Stellentis liegt, dass hier hin und wieder die Verbindung verloren geht und keine Daten abgefragt/geliefert werden. Ich bin mir aber nicht sicher. Vielleicht helfen mir die Daten aus dem Log weiter.
              Auf jeden Fall hat es immer sofort funktioniert, wenn der Container neu gestartet wurde. Daher dachte ich, dass dies die Lösung ist.
              Ich melde mich wieder, wenn ich Neuigkeiten haben.
              Dennoch wäre ich daran interessiert, ob es eine Möglichkeit gibt über ein Script einen "anderen" Container neu zu starten. Es müsste auch gar nicht zwingend täglich sein. Mir würde auch "bei Bedarf" reichen. Ich würde dann das Script mit meiner Alexa verbinden und immer wenn die URL nicht erreichbar ist, über einen Sprachbefehl den Container neu starten. Das geht viel schneller, als die Anmeldung bei Portainer, Auswahl des Containers, Neustart etc..

              Vielen Dank und viele Grüße
              Matze

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              wrote on last edited by OliverIO
              #6

              @matze1909
              Dein portainer hat ebenfalls eine api
              Absicherung läuft über api Token
              https://www.reddit.com/r/portainer/comments/rsbvsv/api_endpoint_to_recreate_and_restart_container/?rdt=58062

              Oder als NPM Paket
              https://www.npmjs.com/package/portainer-api-client

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

              1 Reply Last reply
              1
              • Marc BergM Marc Berg

                @matze1909 sagte in Docker Container über Script täglich neu starten:

                Dennoch wäre ich daran interessiert, ob es eine Möglichkeit gibt über ein Script einen "anderen" Container neu zu starten.

                Das geht, aber natürlich nur, indem man die Sicherheits-/Isolationsfunktionen abschaltet.

                1. /var/run/docker.sock in den ioB-Container durchreichen (wie ein Volume)
                2. Das Node-Module "dockerode" in den Javascript-Adapter einbinden
                3. Beispiel-Skript:
                var Docker = require('dockerode');
                var docker = new Docker({socketPath: '/var/run/docker.sock'});
                
                var container = docker.getContainer('grafana2');
                
                container.stop((err, data) => {
                  if (err) {
                    console.error('Stoppen fehlgeschlagen:', err);
                    return;
                  }
                  console.log('Container gestoppt');
                  
                  setTimeout(() => {
                    container.start((startErr, startData) => {
                      if (startErr) {
                        console.error('Starten fehlgeschlagen:', startErr);
                        return;
                      }
                      console.log('Container gestartet');
                    });
                  }, 2000);  // 2 Sekunden Pause zwischen Stop und Start
                });
                
                

                Alternativ zum Mappen des Sockets kann man auch über die API auf den Docker-Host zugreifen:

                var docker = new Docker({host: 'http://<dockerhost>', port: <dockerport>});
                

                Dann musst du aber den API-Zugriff zulassen, was eine noch größere Lücke darstellt.

                M Offline
                M Offline
                Matze1909
                wrote on last edited by
                #7

                @marc-berg
                Danke für eure Nachrichten und die Mühe.
                Das klingt so, als sollte man es lieber lassen.
                Gut, dass ihr Profis so etwas dazu schreibt. Sonst läuft man Gefahr so etwas zu machen.

                Viele liebe Grüße
                Matze

                OliverIOO CodierknechtC 2 Replies Last reply
                0
                • M Matze1909

                  @marc-berg
                  Danke für eure Nachrichten und die Mühe.
                  Das klingt so, als sollte man es lieber lassen.
                  Gut, dass ihr Profis so etwas dazu schreibt. Sonst läuft man Gefahr so etwas zu machen.

                  Viele liebe Grüße
                  Matze

                  OliverIOO Offline
                  OliverIOO Offline
                  OliverIO
                  wrote on last edited by
                  #8

                  @matze1909 sagte in Docker Container über Script täglich neu starten:

                  Das klingt so, als sollte man es lieber lassen

                  eigentlich nicht.
                  das ist ja bei dir im LAN
                  wenn da niemand ist der APIs ausnutzen kann
                  oder das dann auch macht ist ja keine Gefahr.
                  Wenn dann startet er halt den container neu.
                  Falls mehr sicherheit notwendig ist, dann schränkt man die api bspw per reverseproxy soweit ein, das wirklich nur das geht was man wirklich will.

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

                  1 Reply Last reply
                  0
                  • M Matze1909

                    @marc-berg
                    Danke für eure Nachrichten und die Mühe.
                    Das klingt so, als sollte man es lieber lassen.
                    Gut, dass ihr Profis so etwas dazu schreibt. Sonst läuft man Gefahr so etwas zu machen.

                    Viele liebe Grüße
                    Matze

                    CodierknechtC Online
                    CodierknechtC Online
                    Codierknecht
                    Developer Most Active
                    wrote on last edited by
                    #9

                    @matze1909

                    @oliverio sagte in Docker Container über Script täglich neu starten:

                    eigentlich nicht.
                    das ist ja bei dir im LAN
                    wenn da niemand ist der APIs ausnutzen kann
                    oder das dann auch macht ist ja keine Gefahr.
                    Wenn dann startet er halt den container neu.

                    Solange Du von außen niemanden reinlässt oder irgendwelche genervten Pupertisten im eigenen Haus eine Gefahr darstellen, musst Du Dir eigentlich keine Sorgen machen.

                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                    HmIP|ZigBee|Tasmota|Unifi
                    Zabbix Certified Specialist
                    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                    ilovegymI 1 Reply Last reply
                    0
                    • CodierknechtC Codierknecht

                      @matze1909

                      @oliverio sagte in Docker Container über Script täglich neu starten:

                      eigentlich nicht.
                      das ist ja bei dir im LAN
                      wenn da niemand ist der APIs ausnutzen kann
                      oder das dann auch macht ist ja keine Gefahr.
                      Wenn dann startet er halt den container neu.

                      Solange Du von außen niemanden reinlässt oder irgendwelche genervten Pupertisten im eigenen Haus eine Gefahr darstellen, musst Du Dir eigentlich keine Sorgen machen.

                      ilovegymI Offline
                      ilovegymI Offline
                      ilovegym
                      wrote on last edited by
                      #10

                      @codierknecht

                      Gibt’s eigentlich n Adapter um Docker/portainer api auszulesen?

                      ilovegym66 – ioBroker Projekte & Automationen
                      GitHub: https://github.com/Ilovegym66 | Austausch im Discord: https://discord.gg/yC65zjr5uq

                      CodierknechtC OliverIOO 2 Replies Last reply
                      0
                      • ilovegymI ilovegym

                        @codierknecht

                        Gibt’s eigentlich n Adapter um Docker/portainer api auszulesen?

                        CodierknechtC Online
                        CodierknechtC Online
                        Codierknecht
                        Developer Most Active
                        wrote on last edited by
                        #11

                        @ilovegym sagte in Docker Container über Script täglich neu starten:

                        Gibt’s eigentlich n Adapter um Docker/portainer api auszulesen?

                        Nicht dass ich wüsste.

                        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                        HmIP|ZigBee|Tasmota|Unifi
                        Zabbix Certified Specialist
                        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                        1 Reply Last reply
                        0
                        • ilovegymI ilovegym

                          @codierknecht

                          Gibt’s eigentlich n Adapter um Docker/portainer api auszulesen?

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          wrote on last edited by OliverIO
                          #12

                          @ilovegym

                          was sollte man den da alles reinpacken.
                          das meiste benötigt man ja täglich nicht,

                          für container automatisiert updaten und neustarten gibts watchtower
                          und für den fall mal, das jemand wirklich automatisiert nachstarten möchte, dann kann man dafür die api aufrufen, aber eher würde ich hinterfragen, warum man denn da nachstarten muss.

                          und für komplexere fälle muss man sich mit kubernetes beschäftigen,

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

                          ilovegymI 1 Reply Last reply
                          0
                          • OliverIOO OliverIO

                            @ilovegym

                            was sollte man den da alles reinpacken.
                            das meiste benötigt man ja täglich nicht,

                            für container automatisiert updaten und neustarten gibts watchtower
                            und für den fall mal, das jemand wirklich automatisiert nachstarten möchte, dann kann man dafür die api aufrufen, aber eher würde ich hinterfragen, warum man denn da nachstarten muss.

                            und für komplexere fälle muss man sich mit kubernetes beschäftigen,

                            ilovegymI Offline
                            ilovegymI Offline
                            ilovegym
                            wrote on last edited by
                            #13

                            @oliverio

                            Dachte an reines monitoring , meine docker laufen wie n vw Käfer…

                            ilovegym66 – ioBroker Projekte & Automationen
                            GitHub: https://github.com/Ilovegym66 | Austausch im Discord: https://discord.gg/yC65zjr5uq

                            1 Reply Last reply
                            0
                            • OliverIOO Offline
                              OliverIOO Offline
                              OliverIO
                              wrote on last edited by OliverIO
                              #14

                              @ilovegym

                              Prometheus und grafana
                              https://docs.docker.com/engine/daemon/prometheus/

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

                              CodierknechtC ilovegymI 2 Replies Last reply
                              0
                              • OliverIOO OliverIO

                                @ilovegym

                                Prometheus und grafana
                                https://docs.docker.com/engine/daemon/prometheus/

                                CodierknechtC Online
                                CodierknechtC Online
                                Codierknecht
                                Developer Most Active
                                wrote on last edited by
                                #15

                                @oliverio sagte in Docker Container über Script täglich neu starten:

                                Prometheus und grafana

                                ... oder Alternativ Zabbix

                                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                HmIP|ZigBee|Tasmota|Unifi
                                Zabbix Certified Specialist
                                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                1 Reply Last reply
                                0
                                • OliverIOO OliverIO

                                  @ilovegym

                                  Prometheus und grafana
                                  https://docs.docker.com/engine/daemon/prometheus/

                                  ilovegymI Offline
                                  ilovegymI Offline
                                  ilovegym
                                  wrote on last edited by
                                  #16

                                  @oliverio @Codierknecht

                                  danke euch, ich haette die Sache gern in iobroker drin, um eben ein neustart / uptime etc zu monitoren und dann evtl. Msg ausloesen lassen, wenn da was zickt..

                                  Zur Zeit habe ich Dozzle als Container laufen, der zeigt mir die anderen Container in einer schoenen Uebersicht an und auch die Logs von allen, aber man muss halt ein Auge drauf haben.. und das soll mir der iobroker abnehmen.. :)

                                  Im Prinzip sollte es doch einfach mit der Portainer-Api moeglich sein, die Daten abzurufen, habe das gestern erstmal ueber HA / Plugin gemacht, das geht , kommen aber nur nicht die Werte, die ich gerne haette, und wer arbeitet schon gerne mit HA ? :)

                                  Habe mir dann ha-dockermon als Container installiert, der wirft mir ein reichhaltiges json aus, aber ich mach dazu mal n neuen Thread auf, das hat ja nix mit diesem hier wirklich zu tun..

                                  ilovegym66 – ioBroker Projekte & Automationen
                                  GitHub: https://github.com/Ilovegym66 | Austausch im Discord: https://discord.gg/yC65zjr5uq

                                  OliverIOO 1 Reply Last reply
                                  0
                                  • ilovegymI ilovegym

                                    @oliverio @Codierknecht

                                    danke euch, ich haette die Sache gern in iobroker drin, um eben ein neustart / uptime etc zu monitoren und dann evtl. Msg ausloesen lassen, wenn da was zickt..

                                    Zur Zeit habe ich Dozzle als Container laufen, der zeigt mir die anderen Container in einer schoenen Uebersicht an und auch die Logs von allen, aber man muss halt ein Auge drauf haben.. und das soll mir der iobroker abnehmen.. :)

                                    Im Prinzip sollte es doch einfach mit der Portainer-Api moeglich sein, die Daten abzurufen, habe das gestern erstmal ueber HA / Plugin gemacht, das geht , kommen aber nur nicht die Werte, die ich gerne haette, und wer arbeitet schon gerne mit HA ? :)

                                    Habe mir dann ha-dockermon als Container installiert, der wirft mir ein reichhaltiges json aus, aber ich mach dazu mal n neuen Thread auf, das hat ja nix mit diesem hier wirklich zu tun..

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    wrote on last edited by
                                    #17

                                    @ilovegym

                                    • Mit Prometheus monitors du
                                    • Prometheus schreibt Daten nach grafana
                                    • Du fügst schöne Grafiken aus grafana bei iobroker ein

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

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


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    758

                                    Online

                                    32.6k

                                    Users

                                    82.2k

                                    Topics

                                    1.3m

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

                                    • Don't have an account? Register

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