[Gelöst] Discourse stürzte während des Updates ab

Ich verstehe nicht, was passiert ist und was ich tun soll.

Mein Discourse ist nach dem letzten Update abgestürzt.

Jede Hilfe wäre sehr willkommen.

Waiting for Unicorn to reload...............
Stopping 1 Unicorn worker(s), to free up memory
$ cd /var/www/discourse && git fetch --tags --prune-tags --prune --force
$ cd /var/www/discourse && git reset --hard
HEAD is now at 44bf7b363ac I18N: Update translations (#37404)
$ cd /var/www/discourse && git -c advice.detachedHead=false checkout beta
Previous HEAD position was 44bf7b363ac I18N: Update translations (#37404)
HEAD is now at f863bbf1553 Revert "FIX: Add server-side trust level check for delete all posts (… [backport 2026.2] (#38095)
$ bundle install --retry 3 --jobs 4
Your Ruby version is 3.3.8, but your Gemfile specified ~= 3.4
Docker Manager: FAILED TO UPGRADE
#<RuntimeError:RuntimeError>
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:205:in `run'
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:94:in `upgrade'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:19:in `block in <main>'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `fork'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/commands/runner/runner_command.rb:44:in `load'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/commands/runner/runner_command.rb:44:in `block in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/execution_wrapper.rb:91:in `wrap'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/commands/runner/runner_command.rb:70:in `conditional_executor'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/commands/runner/runner_command.rb:43:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/thor-1.4.0/lib/thor/command.rb:28:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/thor-1.4.0/lib/thor/invocation.rb:127:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/command/base.rb:178:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/thor-1.4.0/lib/thor.rb:538:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/command/base.rb:73:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/command.rb:143:in `with_argv'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/command.rb:63:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.4/lib/rails/commands.rb:18:in `<main>'
/usr/local/lib/ruby/3.3.0/bundled_gems.rb:69:in `require'
/usr/local/lib/ruby/3.3.0/bundled_gems.rb:69:in `block (2 levels) in replace_require'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.19.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
bin/rails:18:in `<main>'
Spinning up 1 Unicorn worker(s) that were stopped initially

Vielleicht werfen Sie einen Blick auf

Ach…

root@forum:~# sudo git pull
sudo ./launcher rebuild app
fatal: kein Git-Repository (oder irgendeines der übergeordneten Verzeichnisse): .git
sudo: ./launcher: Befehl nicht gefunden

Sie sollten zuerst mit cd /var/discourse in das Discourse-Verzeichnis navigieren.

Danke, jetzt funktioniert es. Ich melde mich, wenn er fertig ist.

Vielen Dank, es ist behoben!

Für das nächste Mal und für andere Benutzer, da es anscheinend effizienter ist, Updates über SSH durchzuführen: Welche Befehle sind auszuführen, wenn das Admin Panel ein Docker-Update UND ein Discourse-Update anzeigt? Und in welcher Reihenfolge sollte man vorgehen?

Ein Rebuild wertet beides auf :slight_smile:

Danke! Also zusammenfassend

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

Ich glaube nicht, dass git pull notwendig ist, ein Rebuild führt dies durch. Bearbeitung: siehe Eds Beitrag unten

sudo ist nicht erforderlich, wenn Sie als Root angemeldet sind.
Sie können es auch als einzelnen Befehl ausführen: /var/discourse/launcher rebuild app.

Ich glaube nicht, dass das universell wahr ist. Siehe zum Beispiel
„rebuild app“ fehlgeschlagen. Sieht nach pnpm-Problem aus

Es ist auch sehr günstig, daher bin ich mir nicht sicher, ob es hilft zu erwähnen, dass es möglicherweise nicht notwendig ist.