Mein eigenes Discourse-Image betreiben

Hallo.

Ich versuche, Discourse auf meiner EC2-Instanz zum Laufen zu bringen. Die Standardkonfiguration auf der EC2-Instanz ist abgeschlossen. Es scheint nichts falsch zu sein.
Allerdings
habe ich den Discourse-Quellcode modifiziert, der von GitHub - discourse/discourse: A platform for community discussion. Free, open, simple. · GitHub geklont wurde.
Ich habe die App lokal getestet und alles scheint gut zu funktionieren. Daher muss ich diesen Quellcode-Set auf meine EC2-Instanz übertragen, um discourse_dev, den ursprünglichen Quellcode, zu ersetzen.

Ich habe ein Docker-Image erstellt, es auf die EC2-Instanz gezogen und einen Container aus dem Image gestartet.
Wenn ich versuche, ./launcher enter app auszuführen, finde ich /var/www/discourse nicht.
Was mache ich falsch? Bitte helfen Sie mir!

Wenn du das nicht getan hättest, wäre dies wahrscheinlich ein einfacher Support-Beitrag gewesen.

Warum war das notwendig? Warum nutzt du nicht die Plugin- oder Theme-Komponenten-Architektur?

Im Allgemeinen werden hier nicht-standardisierte Installationen nicht unterstützt.

Ich habe an SSO gearbeitet:

  1. Benutzer sind auf meiner Website eingeloggt.
  2. Wenn Benutzer auf einen Link klicken, werden sie mit einem Login-Token zu Discourse weitergeleitet.
    Das ist mein Szenario, daher musste ich einige Dinge anpassen.

Das ist eine wartungsintensive Konfiguration. Sie müssen Änderungen ständig zusammenführen. Wenn Sie die API-Schicht ändern müssen, verwenden Sie ein Plugin.

Bringen Sie die Basisinstallation mit Discourse tests-passed zum Laufen und verschieben Sie Ihre Änderungen nach Bedarf in ein Plugin.

Es gibt eine native Unterstützung für SSO. Du führst eine einzelne Route in deiner Hauptanwendung aus, die das Discourse-Single-Sign-On-Protokoll bereitstellt. Die Dokumentation findest du hier: Offizielles Single-Sign-On für Discourse (sso)

Welches Plugin schlägst du vor?

Schreiben Sie Ihre eigenen. Aber ich habe allgemein gesprochen. Rafael hat jedoch darauf hingewiesen, dass SSO in der Basisinstallation nativ unterstützt wird, sodass Sie nur dem von ihm verlinkten Leitfaden folgen müssen, um es zu konfigurieren.

Ja, das habe ich bereits getan, bevor ich dieses Thema erstellt habe.
Nun… ich möchte euch fragen, wie man ein Discourse-Image auf einem Server bereitstellt (in meinem Fall eine EC2-Instanz).
Sollte ich das in eine andere Kategorie verschieben?

Ich kann es an den Support weiterleiten. Bitte stelle jedoch sicher, dass du die Standard-Installationsmethode über das offizielle Discourse-Repository verwendest.

Ja, danke. Ich habe definitiv die Standard-Installationsmethode verwendet.

Verwendest du also jetzt eine unveränderte Discourse-Instanz? Du hast das Standard-Installations-Skript ohne Änderungen verwendet und versuchst nicht länger, einen Fork zu nutzen?

Ich denke, es liegt ein Missverständnis vor. Ich meinte, dass ich die offiziellen Anleitungen zur Installation von Discourse befolgt habe. Ich habe viele Ressourcen über Discourse SSO durchsucht, aber nichts war für mein Anmeldeszenario hilfreich. Deshalb musste ich den Quellcode anpassen.

Du musst deinen Code also in dein eigenes Plugin verschieben. Ich gehe davon aus, dass du die Fähigkeiten dafür hast, wenn du in der Lage bist, den Code direkt zu ändern. Installiere es wie alle anderen auch. Andernfalls ist deine Situation nicht unterstützt, es sei denn, jemand hat viel Freizeit, um deinen einzigartigen Fall zu lösen.

Bitte nutze die Plugin-Architektur, wenn die Kernlogik nicht deinen Anforderungen entspricht. Dann ist zumindest die grundlegende Installation identisch. Du wirst es dir später danken, wenn Updates nur einen Klick benötigen. Außerdem hilfst du damit jedem, der die Aufgabe von dir übernimmt, und erhältst hier zeitnahere Unterstützung.

Die Anleitung, die du möglicherweise brauchst, findest du hier: Developing Discourse Plugins - Part 1 - Create a basic plugin

Bevor du diesen Schritt gehst, solltest du jedoch erklären, warum die native SSO-Unterstützung nicht deinen Anforderungen entspricht. Vielleicht kann sich dann ein Sachkundiger zu dieser Funktion äußern?