[GELÖST] Installationsprobleme mit 2 separaten Servern

Also, hier ist das Problem, auf das ich mehr oder weniger gestoßen bin.

Ich habe zwei Hardware-Server. Einer läuft mit Unraid, und die zweite Einheit dient zum Ausführen von ESXi-VMs.

Auf der Unraid-Einheit läuft ein Nginx Reverse Proxy Manager. Auf der ESXi-Maschine habe ich eine Ubuntu-18.04-VM. Während der Installation wird mir mitgeteilt, dass Port 80 funktioniert, aber Port 443 nicht. Betreibt jemand eine solche Konfiguration?

In meinem Reverse Proxy ist meine Domain mit SSL konfiguriert und auf Port 80 eingestellt. Ich verstehe nur nicht genug (ich nutze dies als Lernerfahrung), um herauszufinden, wie ich die beiden Komponenten zusammenbringe und Discourse installiert und in Betrieb nehme.

Vielen Dank!

UPDATE: Ich habe es geschafft, das Problem zu lösen. Der Link, der mich in die richtige Richtung geführt hat, ist hier:
https://www.digitalocean.com/community/tutorials/how-to-install-discourse-behind-nginx-on-ubuntu-14-04

1 „Gefällt mir“

Nur als Hinweis,

Für den nächsten Schritt könntest du in Betracht ziehen, den Proxy so zu konfigurieren, dass er mit einem Unix-Domain-Socket in den Docker-Containern kommuniziert.

Dieses Setup bietet noch mehr Flexibilität, da du einfach einen symbolischen Link von außerhalb des Containers nach innen legen kannst und problemlos zwischen Containern wechseln kannst, ohne Ausfallzeiten und ohne Neustart von nginx.

Zum Beispiel (unter Linux; dies funktioniert nicht unter macOS):

Der Unix-Socket könnte sich beispielsweise hier befinden (Container-Sicht):

/shared/mycool.discourse.sock

Außerhalb des Containers:

ln -sf /var/discourse/shared/socket-only/mycool.discourse.sock  /tmp/mycool.discourse.sock

Damit kann dein externer nginx-Server mit Reverse-Proxy auf:

/tmp/mycool.discourse.sock

zugreifen.

Angenommen, du möchtest einige Plugins hinzufügen und musst neu aufbauen.

Du kannst mit /shared/socket-only2 neu aufbauen (eine einfache Änderung in der yml-Datei), und um zum neuen Container zu wechseln, einfach:

ln -sf /var/discourse/shared/socket-only2/mycool.discourse.sock  /tmp/mycool.discourse.sock

(oder in /var/run oder woanders ablegen …)

Das funktioniert sehr reibungslos, und du kannst innerhalb weniger Millisekunden zwischen Containern hin- und herwechseln, ohne nginx neu zu starten, um die TCP/IP-Domain-Sockets neu zuzuordnen.

Ich habe dies vollständig getestet, und es funktioniert einwandfrei und reibungslos.

Es funktioniert (fast) auch mit Apache2, aber bei Apache2 kannst du keinen symbolischen Link verwenden und musst den vollständigen Pfad zum Container in den Apache2-Site-Konfigurationen angeben. Daher erfordert Apache2 einen Neustart, um zu wechseln. Da du jedoch ein nginx-Nutzer bist, wird dies für dich einfach und reibungslos außerhalb des Containers sein.

Toll, danke. Ich werde es heute Abend später ansehen.