Docker für Entwicklung vs. der Rails-Server + Ember

Ich habe den folgenden Thread zur Einrichtung von Discourse für die Entwicklungsumgebung gelesen.
meta discourse org/t/install-discourse-on-macos-for-development/15772

Allerdings wird dort nichts über die Einbindung von Discourse in Docker erwähnt.

Aber die Produktionsanleitung erwähnt “docker”
github com/discourse/discourse/blob/main/docs/INSTALL-cloud.md#5-install-discourse

Ich möchte die Website auf AWS (Amazon) hosten.

Außerdem habe ich ein Git-Repository für Docker selbst bemerkt:
github com/docker/compose

und ein Discourse-Image für Docker in Git:
github com/discourse/discourse_docker

Ich habe Discourse bereits auf meinem macOS installiert, indem ich das Git-Repository für Discourse geklont und es mit dem Rails-Server und der Ember CLI ausgeführt habe, und es funktioniert ordnungsgemäß. Aber ich habe kein “Docker” verwendet.

Meine Fragen sind:

  1. Kann ich einen AWS-Server verwenden, um Docker von https://github.com/docker/compose zu installieren und dann das Discourse-Image https://github.com/discourse/discourse_docker in dieses Docker zu platzieren? Ist das in Ordnung? Gibt es eine andere richtige Methode?

  2. Ich möchte die Datenbank des lokalen Servers verwenden. Wird es also Probleme geben, wenn ich die Backups (Beiträge/Threads, die auf dem lokalen Server erstellt wurden) in die Produktionsumgebung (den tatsächlichen AWS-Server) kopieren möchte?

Im Moment erstelle ich einige Dummy-Beiträge (richtige) auf dem lokalen Server, damit die Website nicht leer ist, wenn sie öffentlich wird.
Ist das die richtige Methode oder kann die Website auf dem tatsächlichen AWS-Server in den “Im Bau”-Modus oder etwas Ähnliches versetzt werden, damit die Leute keine leere Website sehen? damit ich einige Standardbeiträge auf dem tatsächlichen Server erstellen kann?

Um die beste Unterstützung von der Community zu erhalten, verwenden Sie die Standardinstallation für die Produktion. Dies richtet den Docker-Container und eine Datenbank automatisch ein, sodass Sie sich nicht separat darum kümmern müssen.

Ja, dies kann auf AWS bereitgestellt werden.

Ich schlage vor, diesen Ansatz vorerst zu verwenden, bis Sie sich mit Discourse vertraut gemacht haben und Ihre eigenen Fragen beantworten können :wink:

Anfänglich können Sie Ihre Website auf „Anmeldung erforderlich“ (in den Website-Einstellungen) setzen, um sie privat zu halten – es gibt keinen speziellen „Im Bau“-Modus.

4 „Gefällt mir“

Und vielleicht auch Benutzer müssen zustimmen, falls sich jemand anmeldet, wenn Sie nicht hinschauen.

3 „Gefällt mir“

Wie Robert sagte, da Sie keine Plugins entwickeln möchten und Ihr Ziel nur darin besteht, eine Website einzurichten und zum Laufen zu bringen, sollten Sie eine Standardinstallation durchführen (am einfachsten ist es, eine EC2-Instanz mit 2 GB RAM und 40 GB Festplattenspeicher zu starten – Sie können auch mit weniger auskommen, aber ich empfehle es nicht). Dies ermöglicht Ihnen auch die Konfiguration von Dingen wie DNS und Social Logins, was Sie bei einer Entwicklunginstallation nicht tun können.

Sie können jedoch ein Backup Ihrer Entwicklung-Website erstellen und es auf der Produktions-Website wiederherstellen.

4 „Gefällt mir“

Vielen Dank für Ihre Antwort.
Sie meinen also das Sichern der PostgreSQL-Datenbank. Ist das richtig? Oder nur das Klicken auf die Sicherungsschaltfläche im Admin-Tools-Panel in Discourse?

Ich habe bereits 2 GB RAM und 100 GB Festplattenspeicher gekauft, obwohl ich nicht weiß, ob ich sie jemals brauchen werde. Möglicherweise hoste ich mehrere Websites. Ich denke, der RAM wird sowieso nicht für zwei oder mehrere Websites ausreichen?

Es ist in jedem Fall höchst ungewöhnlich, Inhalte von einer Entwicklungsinstallation in die Produktion zu kopieren.

Bereiten Sie Ihre Inhalte einfach in der Produktion vor? Wenn sie privat sind, haben Sie alle Zeit der Welt.

1 „Gefällt mir“

Ja, das werde ich tun, es war nur, weil die Suchmaschinen-Crawler es bemerken und als „nicht zugängliche“ Website usw. registrieren würden, ich weiß es aber nicht.

Dann so schnell wie möglich an die Öffentlichkeit gehen? Sie können die Dinge von z. B. der Google Search Console aus überwachen (abhängig von der Gerichtsbarkeit)

1 „Gefällt mir“

Ok, und ich werde die Website einfach online als Produktionsumgebung erstellen. Das scheint weniger Ärger/Aufwand zu sein. Danke.

1 „Gefällt mir“

Ich denke, das ist viel weniger Ärger. Standardinstallationen können in nur 20 Minuten bereitgestellt werden.

Sie können später auch mit einer Entwickler-Website experimentieren, wenn Sie sich mit der Plugin-Entwicklung beschäftigen möchten.

2 „Gefällt mir“

Das ist es, aber ich habe es getan, als ich einen Import auf einer Entwicklungsinstanz durchgeführt habe.

Dies ist auch weiterhin meine Empfehlung.

1 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.