Titel beachten. Ich stecke jetzt ein wenig in der Klemme. Ich versuche, zu einem Build von Discourse vor Ember 5 zurückzukehren, um die langfristige Wartungsunterstützung für mein Forum aufrechtzuerhalten, das auf Plugins angewiesen ist, die unter der neuen Discourse-Version nicht mehr funktionsfähig sind. Um die Uhr ein paar Tage zurückzudrehen, habe ich alles entfernt (den Container zerstört, /var/discourse gelöscht und neu von GitHub gezogen) und beginne mit einer makellosen Discourse-Installation neu. In meiner .yml habe ich “version: beta” angegeben, sodass ich vor Ember 5 sein sollte.
Nachdem ich mein Administratorkonto eingerichtet und verifiziert habe, werde ich mit einem endlosen Ladebildschirm konfrontiert. Und ja, ich gehe auch in den abgesicherten Modus und aktiviere “Force HTTPS”, wie ich es bei meiner Einrichtung immer tue.
Ich habe sogar jede erdenkliche Methode ausprobiert, Plugins entfernt und sogar neu begonnen, ohne Plugins, außer dem absoluten Minimum von nur…
- git clone https://github.com/discourse/docker_manager.git
…in meiner .yml-Datei. Kein Erfolg. Nach der Einrichtung meines Administratorkontos werde ich immer noch (mit einer abgespeckten, makellosen Installation) mit einem endlosen Ladebildschirm des Todes konfrontiert.
Wenn ich mir die Konsole ansehe, sehe ich derzeit Folgendes:
Hier ist meine aktuelle .yml-Datei:
## Dies ist die All-in-One-Standalone-Discourse-Docker-Container-Vorlage
##
## Nach Änderungen an dieser Datei MÜSSEN Sie neu erstellen
## /var/discourse/launcher rebuild app
##
## SEIEN SIE SEHR VORSICHTIG BEIM BEARBEITEN!
## YAML-DATEIEN SIND SEHR EMPFINDLICH GEGENÜBER FEHLERN BEI LEERRÄUMEN ODER AUSRICHTUNG!
## Besuchen Sie http://www.yamllint.com/, um diese Datei bei Bedarf zu validieren.
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
## Kommentieren Sie diese beiden Zeilen aus, wenn Sie Lets Encrypt (https) hinzufügen möchten
#- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"
## Welche TCP/IP-Ports soll dieser Container bereitstellen?
## Wenn Sie möchten, dass Discourse einen Port mit einem anderen Webserver wie Apache oder nginx teilt,
## siehe https://meta.discourse.org/t/17247 für Details
expose:
- "10080:80" # http
- "10443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## Setzen Sie db_shared_buffers auf maximal 25% des Gesamtspeichers.
## wird automatisch vom Bootstrap basierend auf dem erkannten RAM gesetzt, oder Sie können überschreiben
db_shared_buffers: "2048MB"
## kann die Sortierleistung verbessern, erhöht aber den Speicherverbrauch pro Verbindung
#db_work_mem: "40MB"
## Welchen Git-Revision soll dieser Container verwenden? (Standard: tests-passed)
version: beta
## Maximale Upload-Größe (Standard: 10m)
upload_size: 8196m
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## Wie viele gleichzeitige Webanfragen werden unterstützt? Hängt von Speicher und CPU-Kernen ab.
## wird automatisch vom Bootstrap basierend auf den erkannten CPUs gesetzt, oder Sie können überschreiben
UNICORN_WORKERS: 8
## TODO: Der Domainname, auf den diese Discourse-Instanz reagieren wird
## Erforderlich. Discourse funktioniert nicht mit einer reinen IP-Nummer.
DISCOURSE_HOSTNAME: forum.tabletpc.review
## Kommentieren Sie dies aus, wenn der Container mit demselben Hostnamen gestartet werden soll
## (-h Option) wie oben angegeben (Standard "$hostname-$config")
#DOCKER_USE_HOSTNAME: true
## TODO: Liste der per Komma getrennten E-Mails, die bei der Erstanmeldung zu Administratoren und Entwicklern gemacht werden
## Beispiel 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'admin@tabletpc.review'
## TODO: Der SMTP-Mailserver, der zum Überprüfen 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: [REDACTED]
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: [REDACTED]
DISCOURSE_SMTP_PASSWORD: " [REDACTED]"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (optional, Standard true)
## Wenn Sie die Lets Encrypt-Vorlage hinzugefügt haben, kommentieren Sie unten aus, um ein kostenloses SSL-Zertifikat zu erhalten
#LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
## Die CDN-Adresse für diese Discourse-Instanz (konfiguriert zum Abrufen)
## siehe https://meta.discourse.org/t/14857 für Details
#DISCOURSE_CDN_URL: //discourse-cdn.example.com
DISCOURSE_MAXMIND_LICENSE_KEY: [REDACTED]
## Der Docker-Container ist zustandslos; alle Daten werden in /shared gespeichert
volumes:
- volume:
host: /var/discourse/shared/tabletpcreview
guest: /shared
- volume:
host: /var/discourse/shared/tabletpcreview/log/var-log
guest: /var/log
## Plugins werden hier eingefügt
## siehe https://meta.discourse.org/t/19157 für Details
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
## Alle benutzerdefinierten Befehle, die nach dem Erstellen ausgeführt werden sollen
run:
- exec: echo "Beginn der benutzerdefinierten Befehle"
## Wenn Sie die E-Mail-Adresse des Absenders für Ihre erste Registrierung festlegen möchten, kommentieren Sie sie aus und ändern Sie sie:
## Nachdem Sie die erste Registrierungs-E-Mail erhalten haben, kommentieren Sie die Zeile wieder aus. Sie muss nur einmal ausgeführt werden.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Ende der benutzerdefinierten Befehle"
EDIT: Seltsamerweise funktioniert die Website, wenn ich Plugins im abgesicherten Modus deaktiviere. Wenn ich sie jedoch aktiviert lasse, funktioniert sie nicht. Mein einziges Plugin ist Docker Manager, warum schlägt es also fehl?
Das funktioniert: https://forum.tabletpc.review/?safe_mode=no_plugins
Das funktioniert nicht: https://forum.tabletpc.review/?safe_mode=no_themes

