Hallo! Ich habe ein Problem mit dem letzten Update:
FAILED -------------------- Pups::ExecError: cd /var/www/discourse & su discourse -c ‘bundle exec rake db:migrate’ fehlgeschlagen mit Rückgabewert #<Process::Status: pid 690 exit 1> Speicherort des Fehlers: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn’ exec fehlgeschlagen mit den Parametern {“cd”=>“$home”, “hook”=>“db_migrate”, “cmd”=>[“su discourse -c ‘bundle exec rake db:migrate’”]} 7027ff0ccd166f831f9728472676ad91704fdd4caa6833a219d44697e740acdc ** BOOTSTRAP FEHLGESCHLAGEN ** Bitte scrollen Sie nach oben und suchen Sie nach früheren Fehlermeldungen, es kann mehr als eine geben. ./discourse-doctor kann bei der Diagnose des Problems helfen.
Ok, wie kann ich sie identifizieren? Suche nach dem Wort „Fehler“? Wenn Sie mir sagen, wie ich das Log ausführen kann, werde ich es anhängen. Ich bin neu in der Verwendung von Servern. Vielen Dank für Ihre Hilfe.
Entschuldigung, ich war bei der Arbeit. Hier ist meine app.yml:
## Dies ist die All-in-One, eigenständige 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 SUPER SUPER EMPFINDLICH GEGENÜBER FEHLERN BEI LEERZEICHEN ODER AUSRICHTUNG!
## Besuchen Sie http://www.yamllint.com/, um diese Datei nach 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:
- "80:80" # http
- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.spanish"
## 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"
## Welche Git-Revision soll dieser Container verwenden? (Standard: tests-passed)
#version: tests-passed
env:
LC_ALL: es_ES.UTF-8
LANG: es_ES.UTF-8
LANGUAGE: es_ES.UTF-8
DISCOURSE_DEFAULT_LOCALE: es
## 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: EDITED
## Kommentieren Sie aus, wenn der Container mit demselben Hostnamen gestartet werden soll
## (-h Option) wie oben angegeben (Standard "$hostname-$config")
#DOCKER_USE_HOSTNAME: true
## TODO: Liste von per Komma getrennten E-Mails, die beim ersten Anmelden zu Administratoren und Entwicklern gemacht werden
## Beispiel 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'EDITED'
## TODO: Der SMTP-Mailserver, der zum Überprüfen 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: EDITED
DISCOURSE_SMTP_PORT: EDITED
DISCOURSE_SMTP_USER_NAME: EDITED
DISCOURSE_SMTP_PASSWORD: EDITED
DISCOURSE_SMTP_ENABLE_START_TLS: true # (optional, Standard true)
DISCOURSE_SMTP_DOMAIN: EDITED
DISCOURSE_NOTIFICATION_EMAIL: EDITED
## Wenn Sie die Lets Encrypt-Vorlage hinzugefügt haben, kommentieren Sie unten aus, um ein kostenloses SSL-Zertifikat zu erhalten
LETSENCRYPT_ACCOUNT_EMAIL: EDITED
## Die HTTP- oder HTTPS-CDN-Adresse für diese Discourse-Instanz (konfiguriert zum Abrufen)
## siehe https://meta.discourse.org/t/14857 für Details
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
## Der Maxmind Geolocation IP-Adressschlüssel für die IP-Adresssuche
## siehe https://meta.discourse.org/t/-/137387/23 für Details
DISCOURSE_MAXMIND_LICENSE_KEY: EDITED
## Der Docker-Container ist zustandslos; alle Daten werden in /shared gespeichert
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## Plugins gehen hier hin
## 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
- git clone https://github.com/discourse/discourse-reactions
## Beliebige benutzerdefinierte Befehle, die nach dem Erstellen ausgeführt werden sollen
run:
- exec: echo "Beginn der benutzerdefinierten Befehle"
## Wenn Sie die 'Von'-E-Mail-Adresse für Ihre erste Registrierung festlegen möchten, kommentieren Sie die Zeile 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"
Die Wahrheit ist, dass ich nie Probleme beim Aktualisieren hatte. Ich habe nichts Seltsames getan, ich habe nur das System aktualisiert und die Warnung erhalten, dass ein Fehler aufgetreten ist.
Es hat Probleme beim Ausführen einer Migration vom Mai 2021. Wurde diese Website zwischen den Release-Kanälen (Beta/Stable/Tests-Bestanden) verschoben oder zu einem bestimmten Zeitpunkt aus einem Backup wiederhergestellt?
Ich erinnere mich, dass wir an diesem Datum (21. Mai) von mybb migriert sind.
Ja, es stimmt, dass ich heute versucht habe, ein Backup vom Anfang des Monats wiederherzustellen, um eine funktionierende Kopie vor dem Fehler zu erhalten, aber als ich auf Start klickte, erschien ein Fehlerbildschirm.
Vielen Dank für Ihre Antwort. Ich glaube, mein Problem hängt mit einem Datenbankfehler im Zusammenhang mit der Migration der Foren zusammen. Ein Wiederaufbau der App funktioniert nicht.
Ich habe die FAQ und die Handbücher geprüft, aber keine Lösung gefunden.
Ich habe einige Backups von davor (glaube ich) dem Fehler, aber ich kann sie nicht laden, da die App nicht läuft. Ich kann nur daran denken, alles zu löschen, eine saubere Neuinstallation durchzuführen und ein Backup zu laden…
Wenn Sie ein Backup haben und davon ausgehen, dass Sie die App nicht ausführen können (um das Backup wiederherzustellen), was können Sie tun? Sehen Sie keine andere Möglichkeit, als Docker zu löschen und neu zu beginnen?
Das einzige Thema, das ich mit einem ähnlichen Problem finden konnte, war Unable to login into discourse suddenly - #8 by Tarek_Khalil, und der Rat war, ein Backup von vor dem Migrations-Snafu wiederherzustellen, was in Ihrem Fall möglicherweise nicht die beste Option ist, da dies einige Zeit her ist.\n\nIch fürchte, Datenbankfehler liegen außerhalb meines Fähigkeitsbereichs. @pfaffman und @RGJ sind normalerweise sehr gut darin (obwohl ich nicht weiß, ob sie das schon einmal erlebt haben). Haben Sie Jungs ein paar Tricks auf Lager für dieses Problem?
Gern geschehen! Wenn ich eine Tabelle leere, gibt mir eine andere einen Fehler. Ich habe bereits etwa 3 Tabellen geleert… Soll ich so weitermachen, eine nach der anderen? Vielen Dank für Ihre Hilfe.
Ich antworte mir selbst. Nachdem ich 7 Tabellen geleert habe (discourse_reactions_reactions, directory_columns, external_upload_stubs, associated_groups, user_associated_groups, group_associated_groups, discourse_reactions_reaction_users) läuft die Seite wieder. Ich habe auch das letzte Backup wiederhergestellt!
Vielen Dank an alle für eure Hilfe! Schönes Wochenende