Nicht ganz ein Contribute > Bug, aber es ist unklar, in welche andere Kategorie es gehören sollte. Es ist problematisch und ist kein Contribute > Feature. Möglicherweise Support, aber ich bin mir ziemlich sicher, dass ich weiß, was ich hier tue.
Bei einem routinemäßigen Pentest in dieser Woche wurde festgestellt, dass die verwendete NGINX-Version EOL ist. Es war nicht möglich, sie auszunutzen, aber sie wurde als dringend zu reparierende Schwachstelle markiert.
Der Versuch, Discourse über git pull zu aktualisieren, hat das Problem immer noch nicht behoben, da obwohl das Discourse Docker-Repo aktualisiert wurde, die Vorlagen das Basis-Image auf die vorherige Version festlegen (discourse/base:2.0.20260109-0020).
Einige Fragen:
Warum war die festgelegte NGINX-Version so alt, dass sie überhaupt schon EOL war? Gibt es einen mir unbekannten Grund?
Warum wurde die neue Version als 1.28.1 und nicht als 1.29.4 (Stand 2026.01.27) gewählt? Gibt es dafür ebenfalls einen Grund?
Im Allgemeinen scheint Discourse sehr daran gelegen zu sein, alle Benutzer auf einer aktuellen Version zu halten (wirkt sinnvoll), also das, was früher tests-passed war.
Wie kann ich NGINX aktualisieren (idealerweise ohne lokale Workarounds)?
Dafür gibt es keinen bestimmten Grund, es ist nur so, dass wir den Aktualisierungsprozess eine Weile nicht durchgeführt hatten. Sie haben Recht, dass wir dies idealerweise hätten bemerken sollen, bevor es EOL wurde.
1.28.1 ist die neueste „stabile“ Version, also haben wir uns dafür entschieden. 1.29.x ist die „Mainline“-Version mit höherer Änderungsrate, und wir benötigen derzeit keine dieser neuen Funktionen.
Danke, dass Sie das zur Sprache gebracht haben. Wir haben nun das Tag in den Vorlagen aktualisiert, daher sollte ein erneutes ./launcher rebuild app Ihnen die neue Nginx-Version liefern.
Kein Problem und danke für die schnelle Antwort @david!
Leider scheint das immer noch nicht zu funktionieren. Das Ausführen von git pull und anschließend ./launcher rebuild app hat zwar ein neues Image gezogen (discourse/base:2.0.20260116-2039), aber das Image scheint immer noch nginx 1.26.3 zu enthalten:
Ich untersuche die Sache auf meiner Seite, falls es sich um ein seltsames Container-Caching-Problem handelt, aber soweit ich das beurteilen kann, enthält das Basis-Image 20260116-2039 einfach immer noch NGINX 1.26.3.
Interessant, ich sehe dasselbe. Obwohl wir NGINX in der Konfiguration aktualisiert haben, scheint die Image-Aktualisierung speziell dazu gedacht gewesen zu sein, Redis und nicht NGINX zu aktualisieren.
Ich werde mich beim Team erkundigen und prüfen, ob wir eine noch neuere Image-Version anpinnen können.
Irgendwelche Neuigkeiten zum Problem mit der NGINX-Versionsfixierung? Ich habe eine Veröffentlichung von 2026.1.0-latest gesehen, aber soweit ich weiß, aktualisiert diese nicht das Basis-Image.