Unsere Diskursbilder werden nicht im Lightbox-Modus angezeigt

Ich stimme zu. Kann der Launcher so angepasst werden, dass er dies in der nächsten Woche warnt oder blockiert, @falco?

Ich habe das gleiche Problem. Könntest du bitte genau erklären, wie die .yml-Datei umbenannt werden muss?

Muss die TLD und die Subdomain Teil des Dateinamens sein? Wäre es für diese Seite meta.discourse.org.yml?

Benenne es um in meta_discourse_org.yml.

Der einzige Punkt in Ihrem Dateinamen sollte vor der Erweiterung stehen.

Danke für die Klärung. Ich habe den Dateinamen geändert und neu erstellt, aber ich sehe immer noch keinen Lightbox-Effekt oder Hover, um die Bildunterschrift bei Bildern anzuzeigen.

Um welche Protokolldatei handelt es sich dabei? Ich versuche zu bestätigen, ob es sich um dasselbe Problem handelt.

Ich habe auch die Option Deine Seite nur mit HTTPS erzwingen aktiviert und den Port 80 in der Firewall blockiert.

cd /var/discourse
./launcher enter app
tail -f /shared/log/rails/production.log

Siehe auch diesen Artikel zu Discourse-Protokollen.

Wenn dies nur bei bestehenden Beiträgen auftritt, aber neu hochgeladene Bilder in Ordnung sind, half es mir, folgende Befehle auszuführen:

rake uploads:recover_from_tombstone
rake posts:rebake

Siehe auch dort.

Alles wirklich hilfreich, danke.

Es sieht so aus, als hätte ich das gleiche Problem mit dem Fehler can't reach '/uploads/default...

Die nächste Zeile in meiner Protokolldatei lautet:
Started GET "/posts/950" for 127.0.0.1 at 2020-07-07 08:24:05 +0000

Habt ihr eine Idee, warum bei mir über die Loopback-IP versucht wird und nicht über den neu benannten Container oder die lokale IP des Containers?

Dies scheint spezifisch für nicht-standardisierte Installationen zu sein, die gleichzeitig:

  • ./discourse-setup nicht verwendet und eine yml-Datei manuell erstellt haben

  • Einen Reverse-Proxy verwenden

  • Dieser Reverse-Proxy magisch über einen Docker-Container-Namen konfiguriert ist

Ich rate davon ab, den aktuellen deterministischen Container-Namen für alle zu ändern, um diesen Randfall zu beheben, es sei denn, das Problem tritt auch auf, wenn man einfach nur einen zusätzlichen Punkt an den yml-Dateinamen anfügt.

Ich habe sie tatsächlich verwendet, habe die Datei später jedoch umbenannt, da ich zwei Discourse-Instanzen betreibe und andernfalls beide in derselben Docker-Instanz „app

Ich habe immer noch das gleiche Problem, dass ich nicht auf das Bild zugreifen kann, um die Dimensionen zu ermitteln.

Kann nicht auf ‘/uploads/default/original/1X/9385b0977b09b0f2239c287de980b6fc238d0da0.png’ zugreifen, um dessen Dimensionen zu ermitteln.

Dies betrifft eine völlig Standard-Installation mit ./discourse-setup

Hast du noch andere Ideen, wie man das Problem lösen kann?

Was passiert, wenn Sie versuchen, das Bild innerhalb Ihrer Discourse-App herunterzuladen?

./launcher enter app
wget https://yourdomain.com/uploads/default/original/1X/9385b0977b09b0f2239c287de980b6fc238d0da0.png

Zeigt die Namensauflösung auf die richtige IP-Adresse?

apt-get update
apt-get install inetutils-ping
ping yourdiscoursedomain.com

oder

apt-get update
apt-get install dnsutils
nslookup yourdiscoursedomain.com

Nochmals vielen Dank für deine Hilfe, Michael, das wird sehr geschätzt.

Ich kann die Domain erfolgreich anpingen, aber es scheint, als würde wget versuchen, über einen Web-Proxy zu gehen.

Ich habe mich an diese Anleitung gehalten und die Variable no-proxy an allen relevanten Stellen hinzugefügt.

Habe ich etwas übersehen? Wie konfiguriere ich den Container, damit er den vom Server verwendeten Web-Proxy nicht nutzt? Muss ich eine No-Proxy-Einstellung zu app.yml hinzufügen?

Ich habe meine Domain in den Parameter no-proxy in der Datei app.yml aufgenommen und das Projekt neu erstellt. Dadurch wird der Proxy nun wie erforderlich ignoriert.

Trotzdem erhalte ich Fehler, wenn ich von innerhalb der App einen wget-Aufruf durchführe:

WARNING: Das Zertifikat von „MYDOMAIN.com

@Michael_Uray weißt du, wo ich die Root-CA hinzufügen muss, damit der Discourse-Container das SSL-Zertifikat vertraut?

Ich habe mich an diese Anleitung gehalten, aber ich denke, diese gilt für den Server selbst und nicht für den Container, auf dem Discourse läuft.

Wenn du keinen Reverse-Proxy verwendest, musst du auf jeden Fall in den Container gehen und ihn dort hinzufügen. Ich vermute jedoch, dass dies nicht dauerhaft ist. Ich schätze, du musst es irgendwie in die app.yml einfügen oder den entsprechenden CA-Pfad innerhalb des Containers über die app.yml dauerhaft machen.