Docker Update Fehler

Ich habe versucht, Docker über mein Discourse-Control-Panel zu aktualisieren, aber alle haben einen Fehler ausgegeben. Kann mir jemand helfen?

/var/www/discourse/lib/discourse_ip_info.rb:48:in `mmdb_download': undefined method `path' for nil:NilClass (NoMethodError)

    filename = File.basename(gz_file.path)
                                    ^^^^^
	from /var/www/discourse/lib/tasks/maxminddb.rake:72:in `block (3 levels) in <main>'
	from /var/www/discourse/lib/tasks/maxminddb.rake:70:in `each'
	from /var/www/discourse/lib/tasks/maxminddb.rake:70:in `block (2 levels) in <main>'
Docker Manager: FAILED TO UPGRADE
#<RuntimeError: RuntimeError>
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:210:in `run'
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:111: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.2.0/gems/railties-7.0.8.1/lib/rails/commands/runner/runner_command.rb:43:in `load'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8.1/lib/rails/commands/runner/runner_command.rb:43:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/thor-1.3.1/lib/thor/command.rb:28:in `run'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/thor-1.3.1/lib/thor/invocation.rb:127:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/thor-1.3.1/lib/thor.rb:527:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8.1/lib/rails/command/base.rb:87:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8.1/lib/rails/command.rb:48:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8.1/lib/rails/commands.rb:18:in `<main>'
internal:/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:37:in `require'
internal:/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:37:in `require'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/bootsnap-1.18.3/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
bin/rails:18:in `<main>'
Spinning up 7 Unicorn worker(s) that were stopped initially

Zusätzlich erscheint in meiner Installation eine Warnung, dass Sidekiq nicht läuft. Viele Aufgaben, wie der Versand von E-Mails, werden asynchron von Sidekiq ausgeführt. Stellen Sie sicher, dass mindestens ein Sidekiq-Prozess läuft. Erfahren Sie hier mehr über Sidekiq.

Das sind die Absturzprotokolle von MaxMind, die fehlerhaft sind. Wenn Sie den API-Schlüssel in Ihrer app.yml auskommentieren und neu erstellen, sollte das Problem behoben sein.

Verweis auf das Thema hierzu:

1 „Gefällt mir“

Wenn das das Problem behebt, würde ich es trotzdem als Fehler bezeichnen, da ein Fehlschlag beim Herunterladen von Maxmind aufgrund eines ungültigen Maxmind-Schlüssels, eines intermittierenden Netzwerkfehlers oder aus anderen Gründen Discourse nicht zum Absturz bringen sollte.

Wie ich in Ihrem Thema erwähnt habe, konnten wir beim letzten Versuch immer noch nicht mit einem gültigen MaxMind-Schlüssel neu erstellen. Wäre das nicht derselbe Fehler?

1 „Gefällt mir“

Ich würde sagen, dass jedes Mal, wenn ein Problem mit Maxmind dazu führt, dass ein Build fehlschlägt, es sich um einen Fehler handelt. Ich bin ziemlich sicher, dass es schon immer möglich war, dass Probleme mit Maxmind einen Build zum Fehlschlagen bringen.

Daher weiß ich nicht, ob es sich um denselben Fehler oder um mehrere Fehler handelt.

Ich denke, die Lösung könnte so einfach sein wie das Hinzufügen eines rescue (irgendwo in discourse/lib/discourse_ip_info.rb at 3d49df2953fd14ae75eeab7621ad687f1b06f504 · pfaffman/discourse · GitHub), um das Leben ohne Maxmind weitergehen zu lassen, unabhängig davon, ob ein Schlüssel, gültig oder ungültig, angegeben wurde.

2 „Gefällt mir“