更新时 maxmind 下载错误

各位,我急需帮助,我快要放弃我的演讲了,我试了好几天更新我的演讲,但总是出现这个错误,这是怎么回事?

CSS 编译完成:2024-04-24 22:53:38 UTC
/var/www/discourse/lib/discourse_ip_info.rb:50:in `mmdb_download': undefined method `path' for nil:NilClass (NoMethodError)

     filename = File.basename(gz_file.path)
                                     ^^^^^
from /var/www/discourse/lib/tasks/maxminddb.rake:73:in `block (3 levels) in <main>'
from /var/www/discourse/lib/tasks/maxminddb.rake:71:in `each'
from /var/www/discourse/lib/tasks/maxminddb.rake:71:in `block (2 levels) in <main>'
Docker Manager: 升级失败
#<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>'
/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:37:in `require'
/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>'
正在启动最初停止的 7 个 Unicorn 工作进程

每次更新时出现此错误,控制面板上就会显示此消息。Sidekiq 未运行。许多任务(例如发送电子邮件)由 Sidekiq 异步执行。请确保至少有一个 sidekiq 进程正在运行。

您已经在此处发帖:

修复程序 (Allow redirect when downloading maxmind database by pfaffman · Pull Request #26333 · discourse/discourse · GitHub) 对您不起作用吗?

它对 Jay 有效,但我相信它也对 @Firepup650 失败了。这确实很奇怪 :thinking:

1 个赞

是的,朋友,我又发帖了,因为我几天前的安装开始出现几个问题,在所有这些错误之后,我只需按 F5,它就会显示安装已更新,没有待处理,即使在之前的尝试中也出现了错误,我最近的语音非常奇怪,它非常慢,没有其他不同之处,我只在我的服务器上使用它,并且我只使用一个不是官方的插件,所有其他插件都是官方的。

我没有尝试任何操作,只是在收到错误警报后按了 F5,然后关于待处理更新的警告就消失了,就好像上次更新成功一样,尽管我知道它并未成功完成。

请尝试手动进行 CLI 重建,面板可能在 maxmind 更改方面存在问题。

1 个赞

好主意,朋友,这个可能性我没想过,明天我会试试这样做,每次更新尝试后 sidekiq 总是停止工作,并在我的控制面板上向我发出警告,唯一能让它恢复的方法是使用服务器上的“sudo reboot”命令,但明天我会尝试手动重建。

1 个赞

通常,如果您在升级过程中遇到 UI 问题,请使用控制台;这是首选方法!
Discourse 每天都会更新,某些更改可能需要完全重建容器。


另外,有一个 Rake 任务 maxminddb:refresh 用于直接测试/下载 MaxMind DB 文件(或 maxminddb:get 以忽略上次下载日期检查和备份):

./launcher enter app
rake maxminddb:refresh
quit
1 个赞