Aber wo ist sie denn nur?
Gestern Abend war noch alles in Ordnung, sie hat uns zum Schlafzimmer geführt und dann…
pi@Gladys:~ $ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6cb19b851498 containrrr/watchtower:armhf-latest "/watchtower --clean…" 3 weeks ago Up 14 minutes 8080/tcp watchtower
709ddb530bac eclipse-mosquitto:2 "/docker-entrypoint.…" 4 weeks ago Up 14 minutes eclipse-mosquitto
pi@Gladys:~ $'
Eine Idee?
Ich schwöre, wir haben uns nicht gestritten und sie wurde gut behandelt!
pi@Gladys:~ $ docker logs gladys
Error: No such container: gladys
pi@Gladys:~ $ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6cb19b851498 containrrr/watchtower:armhf-latest "/watchtower --clean…" 3 weeks ago Up 4 hours 8080/tcp watchtower
709ddb530bac eclipse-mosquitto:2 "/docker-entrypoint.…" 4 weeks ago Up 4 hours eclipse-mosquitto
pi@Gladys:~ $
Gar nichts, versprochen! Sie ist einfach nur in andere Gefilde gezogen. Ich verstehe sie, hier ist das Wetter beschissen
Installiert auf einem RPi 4 mit 4GB RAM, microSD 32GB Klasse A1 ab dem Bild vom Dezember '20.
Sie hat gestern Abend ihre letzte Szene ausgeführt, und nachdem sie die Nachttischlampen ausgeschaltet hatte, sah ich, dass die Verbindung zum MQTT von Gladys verloren ging (Blinken der LED am Stecker), aber ich habe mir keine Sorgen gemacht, denn das war schon mal passiert. Aber tatsächlich, bei 16 Grad im Haus am Morgen war die Sache schnell klar! Sie hat uns für immer verlassen.
Das heißt, es scheint, dass der DB-Ordner noch da ist. Wie kann ich also richtig vorgehen?
Ich hatte vor, bald auf eine SSD umzusteigen, aber ich hätte nicht warten sollen…
Das habe ich mit dem Docker-Befehl geschafft!
Und Gladys, oder ihr Klon, ist wieder da!
Danke!
Bearbeitung: Offenbar ein Absturz um 23:54 Uhr laut den Bildern der Cams im Cache. Aber was ist passiert? Beschädigte SD-Karte?
Ehrlich gesagt sieht das eindeutig nach einer SD-Kartenbeschädigung aus (oder du hast die Wiedereröffnung der Bars gestern genutzt und vergessen, was du auf dem Nachhauseweg gemacht hast )
Jedenfalls, bei deinem Setup und meinen Erfahrungen mit Docker habe ich noch nie gesehen, dass ein Container in der Produktion verschwindet (und ich arbeite mit Firmen, bei denen es Container wie Sand am Meer gibt )
Also meiner Meinung nach könnte es sich um einen Kaskadenfehler handeln:
Die SD-Karte hat ein paar defekte Sektoren
Docker bemerkt, dass es Daten in schlechtem Zustand gibt, die nicht konsistent sind, und löscht den Container..
Tatsächlich wird dir ein Wechsel zu einer SSD langfristig mehr Stabilität bringen
time="2021-05-13T10:13:56Z" level=info msg="Stopping /gladys (24aa5c068c67) with SIGTERM"
time="2021-05-13T10:14:07Z" level=info msg="Creating /gladys"
time="2021-05-13T10:14:08Z" level=info msg="Removing image 6666a80d7b68"
time="2021-05-16T20:38:18Z" level=info msg="Waiting for running update to be finished..."
time="2021-05-16T20:39:27Z" level=info msg="Watchtower 1.3.0\nUsing no notifications\nChecking all containers (except explicitly disabled with label)\nScheduling first run: 2021-05-17 20:39:27 +0000 UTC\nNote that the first check will be performed in 23 hours, 59 minutes, 59 seconds"
time="2021-05-20T05:22:40Z" level=info msg="Watchtower 1.3.0\nUsing no notifications\nChecking all containers (except explicitly disabled with label)\nScheduling first run: 2021-05-21 05:22:40 +0000 UTC\nNote that the first check will be performed in 23 hours, 59 minutes, 59 seconds"
pi@Gladys:~ $
Trotzdem, so verblüffend sein Abschied auch sein mag, sein so einfacher und sofort einsatzbereiter Rückkehr ist beeindruckend!
Ich bin begeistert von so viel Smarttitude!
Ich habe es schon gesagt, aber ich möchte noch ein bisschen darauf bestehen: Bravo an alle, die ein so schönes und effektives Produkt entwickelt haben!
Hallo @pierre-gilles, das ist ein bisschen neben der Spur, aber es würde mich interessieren, wie Docker-Container in der Produktion laufen, ob die Images aus den offiziellen Repositories bezogen werden oder nicht, auf welcher Technologie die Docker-Container laufen usw.
Ich werde bald überlegen müssen, wie ich eine kleine Dev-Infrastruktur aufbaue, das gibt mir ein paar Denkanstöße
Für private Kunden (private Firma) verwende ich private Docker-Registry (Docker Hub hat ein Angebot, GitHub auch, glaube ich). Kurz gesagt, musst du dich mit docker login anmelden, bevor du deine Container pullst
Um deine Container zu starten:
Entweder hast du eine « statische » Infrastruktur (die nicht mit der Nachfrage skaliert) und startest deine Container in einer Umgebung, die du bereitgestellt hast (ein Satz von VMs in der Cloud/Bare Metal). In diesem Fall kannst du docker-compose verwenden, um deine Container zu starten, oder einfach Skripte, wenn die Infrastruktur sehr einfach ist. Du setzt einen Load-Balancer vor deine Container, um den Verkehr zu verteilen.
Oder du hast eine Infrastruktur, die mit der Nachfrage skaliert/entskaliert, und in diesem Fall brauchst du einen Orchestrator wie Kubernetes. Es gibt verwaltete Angebote bei AWS, Azure, Google, DigitalOcean und anderen.. Nun, es ist gut für Projekte mit extrem hohem Traffic, aber 90% der Projekte können über einfache Skripte bereitgestellt werden, mit einem Load Balancer davor und hoppla, das reicht.
Wenn du noch Fragen hast, zögere nicht (du kannst sogar ein anderes Thema erstellen, das ist hier ein bisschen OT ^^)