Erro ao tentar remover o plugin Anti-Spam Akismet

Olá mundo,

Tenho tentado remover o plugin anti-spam Akismet, pois parece que ele não está em conformidade com a LGPD; a análise de dados em servidores no exterior parece ser, segundo nossa equipe jurídica, ilegal em relação à LGPD.

De qualquer forma, segui as instruções para desinstalá-lo e realizei os seguintes passos:

  1. Desativei o plugin nas configurações do fórum,
  2. Conectei ao contêiner Docker com ./launcher enter app,
  3. Executei o comando bundle exec rake akismet_uninstall:delete_reviewables,
  4. Recebi a seguinte mensagem de erro:
root@forum:/var/www/discourse# bundle exec rake akismet_uninstall:delete_reviewables
rake aborted!
ActiveRecord::NoDatabaseError: Não foi possível encontrar seu banco de dados: discourse. Ele pode ser encontrado no arquivo de configuração do banco de dados localizado em config/database.yml.

Para resolver esse problema:

- Você criou o banco de dados para este aplicativo ou o excluiu? Talvez seja necessário criar seu banco de dados.
- O nome do banco de dados mudou? Verifique se seu arquivo database.yml contém o nome correto do banco de dados.

Para criar seu banco de dados, execute:

        bin/rails db:create
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/postgresql_adapter.rb:81:in `rescue in new_client'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/postgresql_adapter.rb:77:in `new_client'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `postgresql_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `public_send'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `new_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:700:in `checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:679:in `try_to_checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:640:in `acquire_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:341:in `checkout'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:181:in `connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_handler.rb:211:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_handling.rb:313:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_handling.rb:280:in `connection'
/var/www/discourse/lib/site_settings/db_provider.rb:58:in `table_exists?'
/var/www/discourse/lib/site_settings/db_provider.rb:14:in `all'
/var/www/discourse/lib/site_settings/defaults_provider.rb:30:in `db_all'
/var/www/discourse/lib/site_setting_extension.rb:285:in `block in refresh!'
/var/www/discourse/lib/site_setting_extension.rb:278:in `synchronize'
/var/www/discourse/lib/site_setting_extension.rb:278:in `refresh!'
/var/www/discourse/lib/site_setting_extension.rb:549:in `block in setup_methods'
/var/www/discourse/lib/site_setting_extension.rb:447:in `public_send'
/var/www/discourse/lib/site_setting_extension.rb:447:in `get'
/var/www/discourse/plugins/discourse-saml/plugin.rb:32:in `setting'
/var/www/discourse/plugins/discourse-saml/lib/saml_authenticator.rb:17:in `setting'
/var/www/discourse/plugins/discourse-saml/lib/saml_authenticator.rb:337:in `enabled?'
/var/www/discourse/lib/plugin/instance.rb:767:in `block in auth_provider'
/var/www/discourse/lib/plugin/instance.rb:514:in `block in notify_before_auth'
/var/www/discourse/lib/plugin/instance.rb:514:in `each'
/var/www/discourse/lib/plugin/instance.rb:514:in `notify_before_auth'
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:14:in `each'
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:14:in `initialize'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:37:in `new'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:37:in `build'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:166:in `block in build'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:162:in `each'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:162:in `inject'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:162:in `build'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/engine.rb:516:in `block in app'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/engine.rb:512:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/engine.rb:512:in `app'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application/finisher.rb:52:in `block in <module:Finisher>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application.rb:372:in `initialize!'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/zeitwerk-2.6.6/lib/zeitwerk/kernel.rb:38:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application.rb:348:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application.rb:511:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'

Caused by:
PG::ConnectionBad: falha na conexão com o servidor no socket "/var/run/postgresql/.s.PGSQL.5432": FATAL: autenticação peer falhou para o usuário "discourse"
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/pg-1.4.5/lib/pg/connection.rb:632:in `async_connect_or_reset'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/pg-1.4.5/lib/pg/connection.rb:760:in `connect_to_hosts'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/pg-1.4.5/lib/pg/connection.rb:695:in `new'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/pg-1.4.5/lib/pg.rb:69:in `connect'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/postgresql_adapter.rb:78:in `new_client'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `postgresql_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `public_send'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `new_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:700:in `checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:679:in `try_to_checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:640:in `acquire_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:341:in `checkout'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:181:in `connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/abstract/connection_handler.rb:211:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_handling.rb:313:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3.1/lib/active_record/connection_handling.rb:280:in `connection'
/var/www/discourse/lib/site_settings/db_provider.rb:58:in `table_exists?'
/var/www/discourse/lib/site_settings/db_provider.rb:14:in `all'
/var/www/discourse/lib/site_settings/defaults_provider.rb:30:in `db_all'
/var/www/discourse/lib/site_setting_extension.rb:285:in `block in refresh!'
/var/www/discourse/lib/site_setting_extension.rb:278:in `synchronize'
/var/www/discourse/lib/site_setting_extension.rb:278:in `refresh!'
/var/www/discourse/lib/site_setting_extension.rb:549:in `block in setup_methods'
/var/www/discourse/lib/site_setting_extension.rb:447:in `public_send'
/var/www/discourse/lib/site_setting_extension.rb:447:in `get'
/var/www/discourse/plugins/discourse-saml/plugin.rb:32:in `setting'
/var/www/discourse/plugins/discourse-saml/lib/saml_authenticator.rb:17:in `setting'
/var/www/discourse/plugins/discourse-saml/lib/saml_authenticator.rb:337:in `enabled?'
/var/www/discourse/lib/plugin/instance.rb:767:in `block in auth_provider'
/var/www/discourse/lib/plugin/instance.rb:514:in `block in notify_before_auth'
/var/www/discourse/lib/plugin/instance.rb:514:in `each'
/var/www/discourse/lib/plugin/instance.rb:514:in `notify_before_auth'
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:14:in `each'
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:14:in `initialize'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:37:in `new'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:37:in `build'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:166:in `block in build'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:162:in `each'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:162:in `inject'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/actionpack-7.0.3.1/lib/action_dispatch/middleware/stack.rb:162:in `build'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/engine.rb:516:in `block in app'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/engine.rb:512:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/engine.rb:512:in `app'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application/finisher.rb:52:in `block in <module:Finisher>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application.rb:372:in `initialize!'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/zeitwerk-2.6.6/lib/zeitwerk/kernel.rb:38:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application.rb:348:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.3.1/lib/rails/application.rb:511:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => akismet_uninstall:delete_reviewables => environment
(Consulte o rastreamento completo executando a tarefa com --trace)

Como posso indicar ao plugin para usar o banco de dados do Discourse?

Abraços,

Olá,

Ainda estou enfrentando este problema. Alguém sabe a quem posso pedir ajuda sobre isso, ou onde posso procurar mais informações, se possível?

Obrigado,

Olá @nono-lqdn,

Parece que isso está relacionado à configuração da sua instância. Você consegue abrir um console usando bundle exec rails c?

Você poderia tentar chamar o código da tarefa diretamente lá como uma solução alternativa.