Automatische Updates via Cronjob - ist das sicher?

Ich denke darüber nach, Discourse über einen Cronjob automatisch zu aktualisieren. Zum Beispiel alle zwei Wochen nachts ein Cronjob mit Folgendem:

cd /var/discourse
./launcher rebuild app

Glaubst du, das ist sicher? Oder sollte ich das manuell machen?

Es ist möglich, dass etwas schiefgeht und Ihre Website beschädigt wird. Ich empfehle Ihnen, darauf zu achten, wenn Sie es tun.

Ja. Ich habe daran gedacht, die gesamte Build-Ausgabe per E-Mail zu senden, damit ich sie morgens überprüfen kann.

Ich persönlich mache genau dasselbe mit meinen Websites, aber ich verwende die Zwei-Container-Installation, falls der Bootstrap fehlschlägt.

Nur wenn der Bootstrap erfolgreich abgeschlossen wird, stoppt der alte Container und der neue wird gestartet.

Bisher hatte ich keine Probleme.

Wie Jay sagte, kann ein Update in seltenen Fällen Probleme verursachen (entweder in Discourse selbst oder mit Plugins/Komponenten).
Ich habe das in ein paar Jahren ein paar Mal erlebt. Es ist sehr selten und die Fehlerbehebungen erfolgen schnell, aber deshalb informiere ich mich tendenziell über die Updates (und überprüfe die Kategorie Bug :eyes:), bevor ich meine Instanzen neu erstelle. Ich warte oft ein paar Tage, nachdem eine neue Version offiziell veröffentlicht wurde.

Und mache auch manchmal einen ./launcher cleanup.

Daher ziehe ich es vor, dann zu aktualisieren, wenn ich möchte und nachdem ich Informationen gesammelt habe. Ich habe eine potenzielle Schadenskontrolle, das ist sicherer.

Irgendwelche Neuigkeiten dazu im Jahr 2026?

Ich möchte Sicherheitsupdates so schnell wie möglich implementieren (selbst auf die Gefahr hin, eine Produktionsseite aufgrund eines unbeaufsichtigten Updates zu beschädigen). Discourse unterscheidet tatsächlich nicht zwischen Sicherheitsupdates und anderen … daher macht es mir nichts aus, einfach alles jeden Tag zu aktualisieren. Ist ein Cronjob immer noch der richtige Weg?

Ich persönlich würde es nicht tun. Einerseits muss ich nicht einmal monatlich auf Sicherheitskorrekturen aktualisieren – das heißt, ich lese die Versionshinweise und treffe eine Entscheidung. Andererseits, wenn Sie täglich aktualisieren, werden Sie die selteneren Fälle finden, in denen das Ding fehlschlägt. Sie werden mit Sicherheit mehr Ausfallzeiten haben.

Wenn es Ihnen nichts ausmacht, dass der Cronjob das Forum manchmal lahmlegt, bis jemand Kompetentes kommt, um es zu beheben, dann führen Sie den Cronjob ruhig aus. Bedenken Sie jedoch, dass die kompetente Person möglicherweise die Entwickler hier einschalten und noch ein paar Stunden warten muss, bis das Problem diagnostiziert und behoben ist.

Ein Discourse-Update hat mein Forum in den letzten vier Jahren nicht zerstört, daher mache ich mir keine Sorgen. Sollte es gelegentlich einmal Probleme geben, kann ich damit umgehen.

Meine größere Sorge gilt der Sicherheit. Aktuelle Vorfälle (wie die Angriffe auf die npm-Pakete von Axios vor einer Woche…) deuten darauf hin, dass wir Bibliotheken erst sieben Tage nach einer neuen Version aktualisieren sollten.

Es wäre ideal, wenn Sicherheitsupdates sofort und der Rest mit einer Verzögerung von sieben Tagen eingespielt werden könnten, aber ich glaube nicht, dass dies von Discourse unterstützt wird.

Ein Problem mit einem Update kann das Forum nicht nur zum Absturz bringen, sondern stattdessen auch stillschweigend neue Fehler, defekte Funktionen oder Inkompatibilitäten von Plugins oder Komponenten einführen – obwohl dies selten ist.

Selbst wenn eine drastische Erhöhung der Update-Häufigkeit auf deinem Forum das Risiko von Abstürzen oder Fehlern erhöht, kannst du immer beobachten, wie es läuft, und bei zu vielen Unannehmlichkeiten wieder rückgängig machen.

Was ich sagen möchte ist: Auch wenn es für manche vielleicht nicht die beste Idee ist, ist es auch nicht wirklich riskant.