[تثبيت متعدد المواقع] خطأ إذن pnpn أثناء إعادة البناء

مرحباً،

أنا غير قادر على ترقية/إعادة بناء حاوية web_only الخاصة بي. يبدو أن إعادة البناء تفشل عند استدعاء multisite migrate. التثبيت النظيف (بدون بيانات، فقط ملفات data.yml و web_only.yml الخاصة بي) ينتج عنه نفس الخطأ (إعادة بناء حاوية البيانات تكتمل بدون أخطاء).

هل أفعل شيئًا خاطئًا أم قد يكون هذا خطأ تم تقديمه في ترقية حديثة؟

بدلاً من ذلك، كيف يمكنني تجاوز هذا الخطأ؟ أنا لا أعرف التفاصيل الداخلية للبرنامج النصي، لكن البرنامج النصي يقول أولاً أن /root/ غير قابل للكتابة، وينشئ مجلد tmp ثم يبدو أنه يتعطل لأن mkdir يفشل في الدليل /root/.

شكراً جزيلاً!

> Seeding theme and color schemes
I, [2026-01-16T17:32:37.738763 #1]  INFO -- : > cd /var/www/discourse && sudo -E -u discourse bundle exec rake multisite:migrate
`/root` is not writable.
Bundler will use `/tmp/bundler20260116-787-ovvxnu787' as your home directory temporarily.
rake aborted!
Discourse::Utils::CommandError: pnpm -C=frontend/asset-processor node build.js (Discourse::Utils::CommandError)
 WARN  Issue while reading "/root/.npmrc". EACCES: permission denied, open '/root/.npmrc'
 WARN  Issue while reading "/root/.config/pnpm/rc". EACCES: permission denied, open '/root/.config/pnpm/rc'
 ERROR  EACCES: permission denied, mkdir '/root/.local/share/pnpm/.tools/pnpm/10.28.0_tmp_901'
For help, run: pnpm help run
/var/www/discourse/lib/discourse.rb:171:in `execute_command'
/var/www/discourse/lib/discourse.rb:137:in `exec'
/var/www/discourse/lib/discourse.rb:32:in `execute_command'
/var/www/discourse/lib/asset_processor.rb:27:in `build_asset_processor'
/var/www/discourse/lib/asset_processor.rb:31:in `build_production_asset_processor'
/var/www/discourse/lib/tasks/assets.rake:155:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => multisite:migrate => assets:precompile:asset_processor
(See full trace by running task with --trace)


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && sudo -E -u discourse bundle exec rake multisite:migrate failed with return #<Process::Status: pid 785 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.4.0/lib/pups/exec_command.rb:138:in `spawn'
exec failed with the params "cd /var/www/discourse && sudo -E -u discourse bundle exec rake multisite:migrate"
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.

@david / @cvx هل يمكن أن يكون هذا مرتبطًا بترقية pnpm التي أجريناها مؤخرًا؟ :thinking:

يجب أن تكون هذه sudo -H -E -u discourse…

(ربما يجب أن نجعل set_home هو الافتراضي)

إعجابَين (2)

من غير المعقول أن أحصل على الإجابة الدقيقة بعد… 25 دقيقة :tada:!

شكراً جزيلاً، اكتملت عملية إعادة البناء بنجاح!

بالفعل، كان ملف web_only.yml الخاص بي يحتوي على الأمر غير الصحيح. أتذكر أنني اتبعت أحد هذه الدروس التعليمية: (التي لا تزال تحتوي على الأمر غير الصحيح الآن؛ لست متأكداً من كيفية تعديل تلك المشاركات).

إعجابَين (2)

نعم، يمكن أن يكون كذلك، لأنني واجهت مشاكل عندما فشلت الترقية عندما أردت الإصدار 10 وكان لدي 9.شيء ما. لذا، قمت بتحديث pnmp يدويًا.

ونعم، أنا خارج الموضوع لأن حالتي ليست متعددة المواقع وكان لدى صاحب المنشور مشكلة مختلفة.

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