تثبيت Discourse على Ubuntu أو Debian للتطوير

@merefield هل يجب أن أقلق بشأن هذه؟

إعجاب واحد (1)

نعم، يجب أن تكون كذلك.

ما هو ناتج redis-cli ping؟

سأعود إليك بشأن هذا الأمر غدًا (مشغول قليلاً اليوم)

يخرج PONG.
@merefield أفترض أن هذا يعني أنه على ما يرام؟ أي أفكار حول سبب انتهاء المهلة بعد ذلك؟

إعجاب واحد (1)

هل تقترح علي تخفيض Docker إلى الإصدار المذكور؟

حسناً… هناك مشكلة واحدة فقط: أنا لا أستخدم دوكر. سأضطر إلى اتباع هذا الدليل إذن…

نعم بالطبع لست كذلك! :facepalm: كانت تلك نصيحة خاطئة، تم حذفها.

من ردك يبدو أن Redis يستجيب ويعمل.

هل يعمل على رقم المنفذ الكلاسيكي الذي يتوقعه Discourse؟

جرب lsof -wni | grep redis

يجب أن يكون على المنفذ 6379، على ما أعتقد.

إعجابَين (2)

عند تشغيله، لا يحدث شيء.

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

إنه مستقل عن الدليل.

جرب:

sudo lsof -wni | grep redis

هذا يجب أن يعيد خدمة redis. إذا لم يكن الأمر كذلك، فإن خدمتك لا تعمل لسبب ما وستحتاج إلى التحقيق في السبب.

إعجاب واحد (1)

بعد تشغيل هذا، ما زلت أواجه خطأ انتهاء المهلة. غريب جداً. هل يمكن أن يكون مزود خدمة الإنترنت الخاص بي يحظره؟

إنها ليست حلاً، إنها تشخيص. ما هي نتيجة هذا الأمر؟

يجب أن تبدو شيئًا كهذا:

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

جرب هذا أيضًا:

robert@raspberrypi:~/discourse $ ps -A | grep redis
    890 ?        00:00:05 redis-server
إعجابَين (2)

@merefield حصلت على هذا:

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

هذا لا يبدو صحيحًا - هل لديك عمليتا redis قيد التشغيل؟

أود إنهاء العملية الثانية.

إعجاب واحد (1)

أفترض أنني أستخدم الأمر shutdown في redis-cli، ثم أقوم بإنشاء قاعدة البيانات وترحيلها مرة أخرى؟
أم client kill؟

لا، فقط قم بإنهاء العملية الثانية

kill -9 <process-id>

في هذه الحالة، أعتقد أن معرف العملية هو 9449.

هممم…

-bash: kill: (9449) - العملية غير مسموح بها

استخدم sudo …

إعجاب واحد (1)

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>' 

لماذا يُسمى مجلد discourse الخاص بك discourse-f؟

نظرًا لوجود مجلد باسم discourse بالفعل، وكان يحتوي على مجلد postgres الذي قال إنه لا يمكن استنساخه فيه لأنه كان ممتلئًا بالفعل. ومن هنا، قمت باستنساخه في مجلد جديد.
لقد تمكنت للتو من sudo rm -rf هذا المجلد (حاولت rm -rf ولكنه قال رفض الإذن، لذلك طبقت نفس التكتيك هنا واستخدمت sudo)
هل يؤثر ذلك على التثبيت؟