فشل تحديث Discourse

حاولت تحديث Discourse إلى أحدث إصدار اليوم. فشل. إليك السجل:

********************************************************
*** يرجى التحلي بالصبر، قد تستغرق الخطوات التالية بعض الوقت ***
********************************************************
إعادة تشغيل Unicorn، لتحرير الذاكرة
إعادة تشغيل Unicorn pid: 548
في انتظار إعادة تحميل Unicorn.
في انتظار إعادة تحميل Unicorn..
في انتظار إعادة تحميل Unicorn...
في انتظار إعادة تحميل Unicorn....
في انتظار إعادة تحميل Unicorn.....
في انتظار إعادة تحميل Unicorn......
في انتظار إعادة تحميل Unicorn.......
في انتظار إعادة تحميل Unicorn........
في انتظار إعادة تحميل Unicorn.........
إيقاف 3 عمال Unicorn، لتحرير الذاكرة
إيقاف طابور المهام لاستعادة الذاكرة، المعرف الرئيسي هو 2943724
$ cd /var/www/discourse && git fetch --tags --prune-tags --prune --force
$ cd /var/www/discourse && git reset --hard HEAD@{upstream}
HEAD is now at be4f1e335 PERF: Cache `hostname` in `DiscourseLogstashLogger` (#27442)
$ bundle install --retry 3 --jobs 4
Bundle complete! 141 Gemfile dependencies, 174 gems now installed.
Gems in the groups 'development' and 'test' were not installed.
Bundled gems are installed into ./vendor/bundle
1 installed gem you directly depend on is looking for funding.
  Run `bundle fund` for details
$ yarn install
yarn install v1.22.19
[1/5] Validating package.json...
[2/5] Resolving packages...
warning Resolution field "unset-value@2.0.1" is incompatible with requested version "unset-value@^1.0.0"
[3/5] Fetching packages...
error ember-template-lint@6.0.0: The engine "node" is incompatible with this module. Expected version "^18.18.0 || ^20.9.0 || >=21.1.0". Got "18.16.0"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
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:101: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.4/lib/rails/commands/runner/runner_command.rb:43:in `load'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8.4/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.4/lib/rails/command/base.rb:87:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8.4/lib/rails/command.rb:48:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8.4/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>'
Spinning up 3 Unicorn worker(s) that were stopped initially

أي فكرة؟

يجب عليك إجراء ترقية عبر سطر الأوامر.

./launcher rebuild app

إعجابَين (2)

مرحباً جاي،
لقد فعلت ذلك. حاولت أيضًا تشغيل ./launcher start app.
لكنني واجهت خطأً مختلفًا. هذه المرة، كان خطأ بوابة سيئة من Nginx. لاحظت أن Discourse اشتكى من انخفاض مساحة التخزين ولكني قمت بتنظيف بعض المساحة.
مرفق بعض المعلومات.

هل قمت ببدء التشغيل أو إعادة البناء بعد تحرير المساحة؟

من المتوقع ظهور بوابة سيئة لمدة دقيقة أو دقائق قليلة بعد بدء تشغيل الحاوية. ولكن قد يكون ذلك بسبب أنك قمت بترحيل قاعدة البيانات ولن تعمل الحاوية القديمة بعد الآن.

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

إذًا، في كل مرة أقوم فيها بتشغيل ./launcher rebuild app أو ./launcher start app أو ./launcher restart app، أواجه دائمًا السؤال المزعج حول تنظيف المساحة. أضغط على Y في كل مرة.

حسنًا، لقد قمت بتنظيف بعض المساحة يدويًا. يبدو أن هناك ملفات غير مفيدة في دليل snap.

ثم أعدت محاولة العملية ./launcher restart app. هذه المرة، اختفى الخطأ.

لكنني ما زلت أحصل على خطأ 502 Bad Gateway.

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

إذا كنت لا تزال تواجه هذه المشكلة بعد مرور بضع دقائق على تشغيل الموقع، فابحث في /var/discourse/shared/standalone/logs/rails/production.log وأيضًا في .../logs/var-log/nginx/*

إذًا، إنها مشكلة في PostgreSQL. كيف يمكنني إصلاح هذا؟ أعني، نحن لا نبدأ خادم PostgreSQL يدويًا، أليس كذلك؟

الملفات الموجودة داخل postgres_data مملوكة باسم المستخدم الخاص بي على الخادم والمجموعة هي crontab.

لماذا؟

أليس هذا تثبيتًا قياسيًا؟

لقد استخدمت التثبيت القياسي.

ثم فشلت عملية التحديث (عبر لوحة تحكم المسؤول). لذلك اضطررت إلى الاتصال بالخادم عبر ssh وقمت بتنظيف بعض المساحات. عندما قمت بتشغيل ./launcher rebuild (or restart) app، لم تُظهر العملية أي خطأ، ولكنني حصلت على خطأ 502 Bad Gateway.

إذًا، لمن يجب أن تكون ملكية postgres_data؟ هل للمستخدم الجذر (root)؟

يجب تثبيت كل هذا بصلاحيات الجذر.

لقد قمت بتشغيل ./launcher rebuild (or restart) app بصلاحيات الجذر. لقد قمت بتشغيل sudo su أولاً. على أي حال، لا أعتقد أنه يمكنك تنفيذ launcher كمستخدم عادي (سيشتكي Docker).

حسنًا، لقد أصلحت هذه المشاكل أخيرًا.

  1. قمت بتغيير حجم مساحة التخزين لإتاحة بعض المساحة لـ Discord. لقد أنشأت لقطة لآلة Discord الافتراضية في GCP واستعدتها بمساحة تخزين أكبر.
  2. قمت بتغيير محتوى الملف containers/app.yml:

من

templates:
  - "templates/postgres.template.yml"

إلى

templates:
  - "templates/postgres.13.template.yml"

ثم قمت بتشغيل ./launcher rebuild app دون أي مشاكل بعد الآن.

شكرًا!

إعجابَين (2)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.