Ich habe Discourse eingerichtet in Digital Ocean gestartet und folgende Fehlermeldung erhalten. Nun lädt mein Discourse-Board unter wespenreboards.com nicht mehr.
Es sieht so aus, als ob Sie versucht haben, Ihre IP-Adresse anstelle Ihres Domainnamens einzugeben. Der Wert in den eckigen Klammern ist das, was bereits vorhanden ist. Wenn Sie also nichts ändern möchten, können Sie die Eingabetaste drücken und zum nächsten Feld wechseln, ohne etwas zu ändern.
Sie sollten in der Lage sein, Ihre Instanz neu zu starten, indem Sie Folgendes ausführen:
./launcher restart web_only
Großartig! Das hat funktioniert… danke! Jetzt lädt die Website. Ist der Hostname also die Webadresse? Ich habe die IP-Adresse eingegeben, weil bei WinSCP HOST als IP-Adresse aufgeführt ist.
Für diesen Teil der discourse set-up sollten Sie einfach die Eingabetaste drücken und zum nächsten Schritt springen können, da er ihn bereits vom letzten Mal kennt. Und wenn Sie dann zu den SMTP-spezifischen kommen, können Sie die neuen Informationen hinzufügen, um das Vorhandene zu überschreiben.
Aber es funktioniert nicht mit IPs, nur mit Domains. ![]()
Ich wollte nur mal nachfragen, wie es läuft.
Haben Sie es schon zum Laufen gebracht?
Danke fürs Nachfragen, Jammy. Ich bin ein wenig langsam, weil ich gerade auch in ein anderes Land umziehe. Daher habe ich es noch nicht versucht.
Ich hatte mich bereits aus der Konsole abgemeldet, als du vorgeschlagen hast, dort fortzufahren, daher denke ich, dass ich mit meinem Hostnamen ganz von vorne anfangen muss. Und noch einmal, es ist discourse.example.com, richtig?
Wenn während des Vorgangs etwas schiefgeht, das die Benutzer negativ beeinträchtigt, z. B. Discourse wie beim letzten Mal ausfällt, gibt es dann einen “universellen” Befehl, um das rückgängig zu machen, was ich getan habe, damit Discourse zumindest so funktioniert wie vor der Verwendung der Konsole? Ich möchte nur abgesichert sein ![]()
Das ist in Ordnung, ich möchte Sie nicht hetzen. ![]()
Ich werde Ihnen eine Schritt-für-Schritt-Anleitung geben, auf die Sie zurückgreifen können, wenn Sie bereit sind:
- Öffnen Sie Ihre Digital Ocean-Konsole
cd /var/discourse./discourse-setup
Dies wird Sie dann mit einer Reihe von Fragen auffordern. Da Ihr Forum bereits läuft, sehen Sie, dass die Werte in den eckigen Klammern (z. B. [discourse.example.com]) mit Ihren vorhandenen Informationen vorausgefüllt sind:
Wenn diese Informationen nicht geändert werden müssen, können Sie einfach die Eingabetaste drücken und zur nächsten Frage gelangen.
Hier sind die Fragen, die gestellt werden:
Hostname für Ihr Discourse? [discourse.example.com]:
E-Mail-Adresse für Administratorkonten? [me@example.com,you@example.com]:
SMTP-Serveradresse? [smtp.example.com]:
SMTP-Port? [587]:
SMTP-Benutzername? [user@example.com]:
SMTP-Passwort? [pa$$word]:
E-Mail-Adresse für Let's Encrypt-Konto? (ENTER zum Überspringen) [me@example.com]:
Optionale Maxmind-Lizenzschlüssel () [xxxxxxxxxxxxxxxx]:
Diejenigen, für die Sie neue Informationen hinzufügen möchten, sind die SMTP-Informationen. Der SMTP-Port wird immer noch 587 sein, sodass Sie für diesen auch einfach die Eingabetaste drücken können. Die anderen Informationen erhalten Sie von Ihrem E-Mail-Anbieter (glaube ich, sendinblue).
Sobald alle Informationen eingegeben sind, erhalten Sie die Möglichkeit, die eingegebenen Daten zu überprüfen, und Ihre Instanz wird dann mit diesen neuen Informationen neu erstellt. Wenn alles gut geht, ist das alles, was Sie brauchen. ![]()
Wenn es aus irgendeinem Grund nicht funktioniert (wie gestern), sollte die Ausführung von ./launcher restart web_only Ihre Version vor dem erneuten Erstellen wiederherstellen.
Aufgrund eines Ihrer früheren Screenshots sieht es so aus, als ob Sie auch eine Serverwartung benötigen könnten, aber das können wir besprechen, wenn Sie daran interessiert sind, sobald wir Ihre E-Mail zum Laufen gebracht haben. ![]()
![]()
Das ist eine große Hilfe! Danke. Ich werde hierher zurückkehren, sobald ich es ausprobiert habe, und ob erfolgreich oder nicht, werde ich es Sie wissen lassen ![]()
Ich habe es ausgeführt und am Ende die folgende Fehlermeldung erhalten:
Dann habe ich versucht, web_only neu zu starten und erhielt die folgende Fehlermeldung, und jetzt ist mein Discourse ausgefallen. Was soll ich tun?
Es scheint, dass die E-Mail von Let’s Encrypt nicht akzeptiert wurde.
Um Ihre alte wiederherzustellen, können Sie:
./launcher restart data
Und dann
./launcher restart web_only
Es lässt mich immer noch nicht. Muss ich mich zuerst von der Konsole abmelden und dann restart data und dann web_only ausführen?
Ich bin mir auch nicht sicher, was das bedeutet: Cannot link to a non running container: /data AS /web_only/data
Diese zusätzlichen web_only-Dateien sind die beiden Versuche, die wir unternommen haben, sie zu aktualisieren. Sie würden bei einer Bereinigung aufgeräumt werden (führen Sie jedoch keine aus, bis wir Ihre Website eingerichtet haben, da sie alles aufräumt, was nicht aktiv mit etwas verbunden ist
).
Ich habe Ihre Einrichtung auf einer Testseite gespiegelt (zwei Container und Sendinblue SMTP), um eine bessere Vorstellung davon zu bekommen, was passiert. Als ich die Meldung Cannot link to a non running container: /data AS /web_only/data erhielt, hat mir das Neustarten des Datencontainers und anschließende Neustarten des web_only-Containers geholfen. Aber ich habe gerade versucht, einen erneuten Lauf von discourse-setup auf ähnliche Weise zu verkomplizieren, um Ihre genaue Situation für ein besseres Verständnis zu replizieren.
Ich sollte vielleicht sagen, dass eine Installation mit einem Container viel breiter unterstützt wird. Wenn sich dies als zu frustrierend erweist, könnte eine alternative Option darin bestehen, ein neues Digital Ocean Droplet zu erstellen und eine frische Instanz mit der Standardinstallationsanleitung zu installieren. Sie können dann ein Backup wiederherstellen und hoffentlich eine viel einfachere Zeit damit haben, sich darum zu kümmern.
Sie können Folgendes ausführen:
./launcher destroy web_only
./launcher start web_only
Dadurch werden Sie mit dem Datencontainer verbunden.
Wenn Sie nur die SMTP-Einstellungen ändern möchten, können Sie die Datei web_only.yml mit nano bearbeiten und dann die oben genannte destroy-, start-Sequenz ausführen.
Ich habe mich von der Konsole abgemeldet, eine neue geöffnet und Ihre Anweisungen befolgt, aber ich erhalte dieselbe Fehlermeldung: „Kann keine Verbindung zu einem nicht laufenden Container herstellen“.
Gibt es eine Möglichkeit, die Dinge wieder so hinzubekommen, wie sie vor der Einrichtung von SMTP in der Konsole waren? Ich kann jetzt keine vollständige Neuinstallation von Discourse durchführen. Es ist zu frustrierend, wenn ich gerade umziehe.
Danke, Jammy.
Zum Glück ist die Kavallerie wieder eingetroffen.
Und ich sehe, Ihre Website ist jetzt wieder online. ![]()
@pfaffman Gott sei Dank, das hat funktioniert. Danke Jay!
Ich denke, ich muss das so lassen, bis ich Ende nächster Woche an meinem neuen Standort bin. Das Wichtigste im Moment ist, das Forum am Laufen zu halten. Es scheint, dass Leute immer noch Passwörter ändern und sich im Forum anmelden können, indem sie ihr bestehendes Google-Passwort verwenden. Also, das machen wir vorerst so. Und du hast mir gestern gezeigt, wie man ein Festplattensicherung mit WinSCP erstellt. Also, damit arbeiten wir vorerst, denke ich.
Nochmals vielen Dank!
EDIT: Als ich sagte, es funktioniert, meinte ich, dass die Seite läuft. Ich muss immer noch versuchen, deine restlichen Vorschläge umzusetzen, um die SMTP direkt zu ändern, aber das werde ich wahrscheinlich später tun.
Ich habe Schwierigkeiten, LOL aufzugeben. Jay, Jammy oder jemand anderes, können Sie hier irgendwelche Unstimmigkeiten feststellen? Zum Beispiel habe ich OFF nach LETSENCRYPT_ACCOUNT_EMAIL: eingegeben: Ich bin mir nicht sicher, ob das richtig war…
## TODO: Der SMTP-Mailserver, der zur Validierung neuer Konten und zum Senden von Benachrichtigungen verwendet wird
# SMTP-Adresse, Benutzername und Passwort sind erforderlich
# WARNUNG: Das Zeichen '#' im SMTP-Passwort kann Probleme verursachen!
DISCOURSE_SMTP_ADDRESS: smtp-relay.sendinblue.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: wespenre2@gmail.com
DISCOURSE_SMTP_PASSWORD: "in dieser Einfügung entfernt"
DISCOURSE_SMTP_ENABLE_START_TLS: false # (optional, Standard true)
DISCOURSE_SMTP_DOMAIN: gmail.com
DISCOURSE_NOTIFICATION_EMAIL: wespenre2@gmail.com
## Wenn Sie die Lets Encrypt-Vorlage hinzugefügt haben, kommentieren Sie die folgende Zeile aus, um ein kostenloses SSL-Zertifikat zu erhalten
LETSENCRYPT_ACCOUNT_EMAIL: OFF
## TODO: Konfigurieren Sie die Konnektivität zu den Datenbanken
DISCOURSE_DB_SOCKET: ''
#DISCOURSE_DB_USERNAME: discourse
DISCOURSE_DB_PASSWORD: (in dieser Einfügung entfernt)
DISCOURSE_DB_HOST: data
DISCOURSE_REDIS_HOST: data
Ich habe meine letsencrypt_account_email auf dem Standardwert me@example.com belassen (ein Wert, der keine E-Mail-Adresse ist, würde den Wiederaufbau unterbrechen). Ich habe auch DISCOURSE_SMTP_ENABLE_START_TLS: auf dem Standardwert true belassen.
Und Ihre E-Mail-Domäne sollte Ihr Domänenname sein, und dann möchten Sie wahrscheinlich, dass Ihre Benachrichtigungs-E-Mail mit noreply@ oder etwas Ähnlichem davor beginnt.
Ich werde mir eine Kopie von meiner holen
DISCOURSE_SMTP_ADDRESS: smtp-relay.sendinblue.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: admin@jammydodger.monster
DISCOURSE_SMTP_PASSWORD: "secret-password"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (optional, Standard true)
DISCOURSE_SMTP_DOMAIN: test.jammydodger.monster
DISCOURSE_NOTIFICATION_EMAIL: noreply@test.jammydodger.monster
## Wenn Sie die Lets Encrypt-Vorlage hinzugefügt haben, kommentieren Sie die folgende Zeile aus, um ein kostenloses SSL-Zertifikat zu erhalten
LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
Danke Jammy. Puh, ich werde es noch einmal versuchen und bin gleich wieder hier… LOL.
Bevor ich anfange, möchte ich sichergehen: die noreply-E-Mail, sollte das noreply@gmail.com sein? Gmail ist die einzige E-Mail-Domain, die ich auf Discourse verwende. Erstellt das automatisch eine noreply-Option bei Gmail, oder welche Domain verwende ich für die noreply-E-Mail? Oder kann ich stattdessen wespenre2@gmail.com für die noreply-E-Mail eingeben?
Ich habe das Folgende in WinSCP bearbeitet (siehe unten), indem ich mit der rechten Maustaste auf web_only.yml geklickt habe, aber ich habe es noch nicht aktualisiert. Ich möchte zuerst Ihre Meinung hören.
Wenn dann alles in Ordnung ist und ich es aktualisiere, führe ich ./launcher destroy web_only und dann ./launcher start web_only nach dem Aktualisieren aus, richtig, und dann sollte es funktionieren?
Wie wäre es damit?
## TODO: Der SMTP-Mailserver, der zur Validierung neuer Konten und zum Senden von Benachrichtigungen verwendet wird
# SMTP-Adresse, Benutzername und Passwort sind erforderlich
# ACHTUNG: Das Zeichen '#' im SMTP-Passwort kann Probleme verursachen!
DISCOURSE_SMTP_ADDRESS: smtp-relay.sendinblue.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: wespenre2@gmail.com
DISCOURSE_SMTP_PASSWORD: "password"
DISCOURSE_SMTP_ENABLE_START_TLS: true # (optional, Standard true)
DISCOURSE_SMTP_DOMAIN: gmail.com
DISCOURSE_NOTIFICATION_EMAIL: noreply@gmail.com
## Wenn Sie die Lets Encrypt-Vorlage hinzugefügt haben, kommentieren Sie die folgende Zeile aus, um ein kostenloses SSL-Zertifikat zu erhalten
LETSENCRYPT_ACCOUNT_EMAIL: wespenre2@gmail.com






