FEHLER: Sie verwenden eine alte Version des Discourse-Images

Hallo, das ist mein erstes Thema! Ich bin Nelly Eggsy und baue eine Website mit Ghost und Discourse.

Ich lausche normalerweise den Foren und lese Themen im Verborgenen. Wenn ich stecken bleibe, suche ich im Forum nach einer Antwort, und das funktioniert meist. Allerdings bin ich gerade festgefahren und brauche Hilfe.

Nach dem Upgrade von Discourse über die Admin-Oberfläche erhalte ich folgende Meldung:

Sie verwenden eine alte Version des Discourse-Images.
Upgrades über die Web-Oberfläche sind deaktiviert, bis Sie das neueste Image ausgeführt haben.

Dazu melden Sie sich per SSH auf Ihrem Server an und führen Folgendes aus:

    cd /var/discourse
    git pull
    ./launcher rebuild app

Ich habe mich an den Leitfaden gehalten, um Discourse und das Docker-Image über Konsoleneingaben auf die neueste Version zu aktualisieren. Leider ist das Upgrade aufgrund eines Fehlers nicht erfolgreich.

Hier ist die Fehlermeldung, die ich erhalte, wenn ich den Befehl ./launcher rebuild app ausführe:

> FAILED
> --------------------
> Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' failed with return #<Process::Status: pid 671 exit 1>
> Location of failure: /pups/lib/pups/exec_command.rb:112:in `spawn'
> exec failed with the params {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
> 9c3a1b4a72818216aaafa5de742f7d1a325aa61497ea49f5b4f1660c6e503fd0
> ** FAILED TO BOOTSTRAP ** 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.

Mein Digital Ocean Droplet verfügt über 2 GB RAM / 50 GB Festplatte + 50 GB / SFO2 – Discourse unter Ubuntu 20.04.

Vielen Dank, dass Sie sich die Zeit genommen haben, meinen Beitrag zu lesen! Ich freue mich darauf, Ihre Nachricht zu lesen.

Willkommen, @nelly! Es tut uns leid, dass du Probleme hast! Das ist eine große Überraschung. EDIT: Das ist ein wenig überraschend.

Hast du benutzerdefinierte Plugins oder Themes?

Könnten Sie bitte nach oben scrollen und die tatsächlichen Fehlermeldungen hier einfügen?

Danke, @pfaffman! Ich schätze deine Antwort. Ja, ich habe einige benutzerdefinierte Themes und Plugins.

Hier sind die Plugins, die ich habe:

      - git clone https://github.com/discourse/docker_manager.git
      - git clone https://github.com/paviliondev/discourse-custom-wizard.git
      - git clone https://github.com/discourse/discourse-spoiler-alert.git
      - git clone https://github.com/paviliondev/discourse-landing-pages.git
      - git clone https://github.com/discourse/discourse-patreon.git
      - git clone https://github.com/discourse/discourse-reactions.git

Ich bin mir nicht sicher, wie ich auf die benutzerdefinierten Themes zugreifen oder sie löschen kann.

Rafael,

Hier ist, was ich direkt über dem Fehler „failed

Du musst meiner Meinung nach noch etwas weiter nach oben scrollen. Diese Meldung zum Lizenzschlüssel bezieht sich auf Maxmind, und ich glaube nicht, dass das das Problem ist.

Jay,

Hier ist die Ausgabe. Ich habe einen Großteil davon gekürzt, damit das Forum mir das Posten erlaubt.

2021-05-03 00:32:20.635 UTC [63] postgres@postgres ERROR:  database "discourse" already exists
2021-05-03 00:32:20.635 UTC [63] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
I, [2021-05-03T00:32:20.639714 #1]  INFO -- : 
I, [2021-05-03T00:32:20.640335 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2021-05-03 00:32:20.760 UTC [74] postgres@discourse ERROR:  role "discourse" already exists
2021-05-03 00:32:20.760 UTC [74] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists

I, [2021-05-03T00:32:21.634456 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown: 
I, [2021-05-03T00:32:21.640838 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown: 
I, [2021-05-03T00:32:21.646998 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown: 
I, [2021-05-03T00:32:21.648588 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2021-05-03T00:32:21.650175 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2021-05-03T00:32:21.651303 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2021-05-03T00:32:21.656597 #1]  INFO -- : 
I, [2021-05-03T00:32:21.657900 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2021-05-03T00:32:21.659157 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2021-05-03T00:32:21.660353 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2021-05-03T00:32:21.661652 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2021-05-03T00:32:21.662825 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2021-05-03T00:32:21.663908 #1]  INFO -- : > echo redis installed
I, [2021-05-03T00:32:21.668192 #1]  INFO -- : redis installed
I, [2021-05-03T00:32:21.669144 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2021-05-03T00:32:21.679111 #1]  INFO -- : logfile ""
I, [2021-05-03T00:32:21.680077 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2021-05-03T00:32:21.683045 #1]  INFO -- : > sleep 10
167:C 03 May 2021 00:32:21.698 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
167:C 03 May 2021 00:32:21.698 # Redis version=6.2.1, bits=64, commit=00000000, modified=0, pid=167, just started
167:C 03 May 2021 00:32:21.699 # Configuration loaded
167:M 03 May 2021 00:32:21.700 * monotonic clock: POSIX clock_gettime
167:M 03 May 2021 00:32:21.702 * Running mode=standalone, port=6379.
167:M 03 May 2021 00:32:21.702 # Server initialized
167:M 03 May 2021 00:32:21.703 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
I, [2021-05-03T00:32:41.096190 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
terser '/var/www/discourse/public/assets/_vendor-892d5a1f7dfb58e3f80950989c67133fd6062344153d17e67db8ba3d126c7a1a.js' -m -c -o '/var/www/discourse/public/assets/vendor-892d5a1f7dfb58e3f80950989c67133fd6062344153d17e67db8ba3d126c7a1a.js' --source-map "base='/var/www/discourse/public/assets',root='/assets',url='/assets/vendor-892d5a1f7dfb58e3f80950989c67133fd6062344153d17e67db8ba3d126c7a1a.js.map'"
****************************************************************************************************
#<Thread:0x000055a7feb17780 /var/www/discourse/lib/tasks/assets.rake:239 run> terminated with exception (report_on_exception is true):
/var/www/discourse/lib/tasks/assets.rake:251:in `rescue in block (2 levels) in <main>': undefined local variable or method `name' for main:Object (NameError)
	from /var/www/discourse/lib/tasks/assets.rake:240:in `block (2 levels) in <main>'
/var/www/discourse/lib/file_helper.rb:63:in `block in download': 401 Error: Invalid license key (OpenURI::HTTPError)

Ich hoffe, das hilft!

Enthält deine app.yml eine Zeile für den MaxMind-Lizenzschlüssel? Versuche, sie zu entfernen und das System neu zu erstellen.

Danke! Das scheint zumindest teilweise zu funktionieren. Wenn ich die Startseite des Forums besuche, werde ich zur Seite „Herzlichen Glückwunsch, Sie haben Discourse installiert!

Es klingt so, als wäre alles gelöscht worden, aber es ist wahrscheinlich noch da. War das dein erstes Update seit einiger Zeit? Wurde dein PostgreSQL aktualisiert? Meine beste Vermutung ist, dass beim PostgreSQL-Update etwas schiefgelaufen ist und du postgres_old umbenennen und von vorne beginnen musst. Weitere Details findest du unter PostgreSQL 13 Update.

Jay, ich (gerade) erinnere mich, dass ich versucht habe, die Uploads und Backups auf den DigitalOcean Block Storage zu verschieben. Vor wenigen Augenblicken habe ich es erneut versucht und beim Aufrufen der Startseite die Fehlermeldung „Oops

Das hat bei mir auch nach einem fehlgeschlagenen Neuaufbau funktioniert – was ist hier das Problem? Danke!