Instale Discourse no Ubuntu ou Debian para Desenvolvimento

@merefield Devo me preocupar com estes?

1 curtida

Sim, você deveria.

O que redis-cli ping retorna?

Te retorno sobre isso amanhã (estou um pouco ocupado hoje)

Ele retorna PONG.
@merefield Presumo que isso significa que está tudo bem? Alguma ideia do porquê ele daria timeout então?

1 curtida

Você está sugerindo que eu faça o downgrade do Docker para o mencionado?

Hmm… ok. Há apenas 1 problema: não estou usando Docker. Acho que terei que seguir este guia então…

Sim, claro que não está! :facepalm: Esse conselho foi errôneo, excluído.

Pela sua resposta, parece que o Redis está respondendo e em execução.

Ele está rodando na porta clássica que o Discourse espera?

tente lsof -wni | grep redis

Deve estar na porta 6379, acredito.

2 curtidas

Quando eu o executo, nada acontece.

natedhaliwal@raspberrypi:~ $ lsof -wni | grep redis
natedhaliwal@raspberrypi:~ $ cd discourse-f
natedhaliwal@raspberrypi:~/discourse-f $ lsof -wni | grep redis
natedhaliwal@raspberrypi:~/discourse-f $

É independente de diretório.

Tente:

sudo lsof -wni | grep redis

Isso deve trazer de volta o serviço redis. Se não, então seu serviço, por algum motivo, não está em execução e você precisará investigar o porquê.

1 curtida

Depois de executar isso, ainda recebo o erro de tempo limite. Muito estranho. Pode ser meu ISP bloqueando?

Não é uma solução, é um diagnóstico. Qual foi o resultado desse comando?

Deve parecer algo assim:

robert@raspberrypi:~/discourse $ sudo lsof -wni | grep redis
redis-ser  890    redis    6u  IPv4   4052      0t0  TCP 127.0.0.1:redis (LISTEN)

tente também:

robert@raspberrypi:~/discourse $ ps -A | grep redis
    890 ?        00:00:05 redis-server
2 curtidas

@merefield Recebi isto:

natedhaliwal@raspberrypi:~/discourse-f $ sudo lsof -wni | grep redis                          
redis-ser  750        redis    8u  IPv4  16886      0t0  TCP 127.0.0.1:redis (LISTEN)         
natedhaliwal@raspberrypi:~/discourse-f $ ps -A | grep redis                                       
750 ?        00:00:01 redis-server                                                           
9449 ?       00:00:00 redis-server

Isso não parece certo - você tem dois processos do redis em execução?

Eu mataria o segundo processo.

1 curtida

Eu presumo que eu uso o comando shutdown no redis-cli, então crio e migro o banco de dados novamente? Ou client kill?

não, apenas mate o segundo processo

kill -9 <process-id>

Neste caso, o ID do processo é 9449, acredito.

Hmm…

-bash: kill: (9449) - Operação não permitida

Use sudo …

1 curtida

WOuld this be an error?

natedhaliwal@raspberrypi:~/discourse-f $ RAILS_ENV=test bin/rails db:create db:migrate                                                                                                                     
Database 'discourse_test' already exists                                                                                                                                                                   
Database 'discourse_test_multisite' already exists                                                                                                                                                         
/home/natedhaliwal/discourse-f/app/models/post_action_type.rb:16:in `expire_cache'                                                                                                                         
/home/natedhaliwal/discourse-f/app/models/post_action_type.rb:42:in `reload_types'                                                                                                                         
/home/natedhaliwal/discourse-f/app/models/flag.rb:37:in `reset_flag_settings!'                                                                                                                             
(eval):78:in `block (2 levels) in run_file'                                                                                                                                                                
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:46:in `eval'                                                                              
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:46:in `block (2 levels) in run_file'                                                      
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:58:in `block in open'                                                                     
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:57:in `open'                                                                              
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:57:in `open'                                                                              
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:36:in `block in run_file'                                                                 
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-7.1.4.1/lib/active_record/connection_adapters/abstract/transaction.rb:535:in `block in within_new_transaction'              
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/activesupport-7.1.4.1/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'                                                     
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-7.1.4.1/lib/active_record/connection_adapters/abstract/transaction.rb:532:in `within_new_transaction'                       
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-7.1.4.1/lib/active_record/connection_adapters/abstract/database_statements.rb:344:in `transaction'                          
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-7.1.4.1/lib/active_record/transactions.rb:212:in `transaction'                                                              
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:35:in `run_file'                                                                          
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:26:in `block in run'                                                                      
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:25:in `each'                                                                              
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/seed-fu/runner.rb:25:in `run'                                                                               
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/discourse-seed-fu-2.3.12/lib/discourse-seed-fu.rb:29:in `seed'                                                                           
/home/natedhaliwal/discourse-f/lib/tasks/db.rake:264:in `block (2 levels) in <main>'                                                                                                                       
/home/natedhaliwal/discourse-f/lib/distributed_mutex.rb:53:in `block in synchronize'                                                                                                                       
/home/natedhaliwal/discourse-f/lib/distributed_mutex.rb:49:in `synchronize'                                                                                                                                
/home/natedhaliwal/discourse-f/lib/distributed_mutex.rb:49:in `synchronize'                                                                                                                                
/home/natedhaliwal/discourse-f/lib/distributed_mutex.rb:34:in `synchronize'                                                                                                                                
/home/natedhaliwal/discourse-f/lib/tasks/db.rake:234:in `block in <main>'                                                                                                                                  
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/task.rb:281:in `block in execute'                                                                                   
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/task.rb:281:in `each'                                                                                               
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/task.rb:281:in `execute'                                                                                            
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/task.rb:219:in `block in invoke_with_call_chain'                                                                    
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `synchronize'                                                                                        
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `invoke_with_call_chain'                                                                             
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/task.rb:188:in `invoke'                                                                                             
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/application.rb:188:in `invoke_task'                                                                                 
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/application.rb:138:in `block (2 levels) in top_level'                                                               
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/application.rb:138:in `each'                                                                                        
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/application.rb:138:in `block in top_level'                                                                          
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/application.rb:147:in `run_with_threads'                                                                            
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/application.rb:132:in `top_level'                                                                                   
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/commands/rake/rake_command.rb:27:in `block (2 levels) in perform'                                             
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/application.rb:214:in `standard_exception_handling'                                                                 
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/commands/rake/rake_command.rb:27:in `block in perform'                                                        
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/commands/rake/rake_command.rb:44:in `block in with_rake'                                                      
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/rake-13.2.1/lib/rake/rake_module.rb:59:in `with_application'                                                                             
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/commands/rake/rake_command.rb:41:in `with_rake'                                                               
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/commands/rake/rake_command.rb:20:in `perform'                                                                 
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/command.rb:156:in `invoke_rake'                                                                               
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/command.rb:73:in `block in invoke'                                                                            
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/command.rb:149:in `with_argv'                                                                                 
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/command.rb:69:in `invoke'                                                                                     
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/railties-7.1.4.1/lib/rails/commands.rb:18:in `<main>'                                                                                    
<internal:/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'                                                                           
<internal:/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'                                                                           
/home/natedhaliwal/.rbenv/versions/3.2.1/lib/ruby/gems/3.2.0/gems/bootsnap-1.18.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'                                                  
bin/rails:18:in `<main>' 

Por que o seu diretório de discourse se chama discourse-f?

Como já existe uma pasta chamada discourse, e ela contém uma pasta postgres que disse que não poderia ser clonada porque já estava cheia. Por isso, clonei para uma nova pasta.
Consegui sudo rm -rf essa pasta (tentei rm -rf mas disse permissão negada, então apliquei a mesma tática aqui e usei sudo)
Isso afeta a instalação?