نفس الشيء، يحدث خطأ عند محاولة إنشاء ملف تعريف المستخدم الإداري. يعمل بعد إضافة خطوة إلى yarn install قبل إنشاء المسؤول كما هو مقترح بواسطة @zergov. لقد قمت بإنشاء طلب سحب لإضافته: DEV: Yarn install to avoid error during initial migration seed by dsims · Pull Request #20866 · discourse/discourse · GitHub
متابعة:
وضع Docker Rootless يسبب نفس مشاكل تعيين الأذونات على لينكس مثل Docker Desktop. الحل البديل الذي نشرته سيعمل مع هذا التكوين أيضًا.
ومع ذلك، لست واثقًا جدًا من الحل البديل، لذلك تحولت إلى تثبيت Docker أصلي على نظام لينكس الخاص بي، وأضفت المستخدم الخاص بي الذي لا يستخدم sudo إلى مجموعة docker والآن تم تعيين الأذونات بشكل صحيح داخل الحاوية ويمكنني تشغيل أوامر docker بدون sudo.
شكرا @dsims، لقد قمت للتو بدمج طلب السحب ![]()
أواجه هذه المشكلة عند استخدام podman (محاولة تشغيل d/boot_dev --init):
Installing gems...
Error response from daemon: environment variable "RAILS_ENV" badly formed, must be key=value
أعتقد أنني سأحتاج إلى استخدام نهج بيئة التطوير الأصلية حيث أنني لن أقوم بتثبيت docker على سطح مكتبي بنظام Fedora لأنه كان معطلاً لسنوات (مع أشياء عشوائية مثل عدم عمل الدفع) و podman يعمل بشكل أفضل بكثير دون أي متاعب (للمشاريع التي تدعمه).
خطأ
خطأ تعذر كتابة الملف “/src/app/assets/javascripts/discourse/yarn-error.log”: “EACCES: إذن مرفوض، فتح ‘/src/app/assets/javascripts/discourse/yarn-error.log’”
خطأ حدث خطأ غير متوقع: “EACCES: إذن مرفوض، إنشاء ‘/src/app/assets/javascripts/node_modules’”.
لماذا أحصل على هذا الخطأ بعد d/boot_dev --init؟
3.0" لديه تبعية نظير غير صحيحة "@uppy/core@^3.2.1".
[4/4] بناء حزم جديدة...
$ ../run-patch-package
patch-package 8.0.0
تطبيق التصحيحات...
@ember/jquery@2.0.0 ✔
babel-plugin-debug-macros@0.3.4 ✔
content-tag@1.1.1 ✔
ember-source@3.28.12 ✔
ember-this-fallback@0.3.1 (1 مبدئي) ✔
ember-this-fallback@0.3.1 (2 سمات) ✔
virtual-dom@2.1.1 ✔
تم الانتهاء في 101.54 ثانية.
ترحيل قاعدة البيانات...
rake aborted!
Discourse::Utils::CommandError: /src/lib/discourse.rb:138:in `exec': node:internal/modules/cjs/loader:1080
throw err;
^
Error: لا يمكن العثور على الوحدة 'esbuild'
مسار المتطلبات:
- /src/app/assets/javascripts/theme-transpiler/build.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
at Module._load (node:internal/modules/cjs/loader:922:27)
at Module.require (node:internal/modules/cjs/loader:1143:19)
at require (node:internal/modules/cjs/helpers:121:18)
at Object.<anonymous> (/src/app/assets/javascripts/theme-transpiler/build.js:3:17)
at Module._compile (node:internal/modules/cjs/loader:1256:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [ '/src/app/assets/javascripts/theme-transpiler/build.js' ]
}
Node.js v18.17.1
/src/lib/discourse.rb:172:in `execute_command'
/src/lib/discourse.rb:138:in `exec'
/src/lib/discourse.rb:34:in `execute_command'
/src/lib/discourse_js_processor.rb:119:in `build_theme_transpiler'
/src/lib/tasks/assets.rake:313:in `block in <main>'
Tasks: TOP => db:migrate => assets:precompile:theme_transpiler
(انظر التتبع الكامل عن طريق تشغيل المهمة مع --trace)
ربما يتعلق هذا بـ: Install Discourse for development using Docker - #239 by zergov
ربما حاول الانتقال إلى الدليل /var/www/discourse وتشغيل:
yarn install
هل لدى أي شخص بعض المقاييس حول هذا؟
لقد بحثت في هذا الموضوع ولكنني لم أجد هذا تحديدًا. أتساءل عما إذا كان شخص ما قد جرب التثبيت العادي والتثبيت باستخدام Docker للمقارنة بينهما ![]()
بعض التلميحات لمن يحاولون استخدام الإجراء الموضح في هذا الموضوع:
-
الخطوة 1 لم تنجح معي. لتثبيت Docker، اضطررت إلى استخدام “البرنامج النصي المريح” الموضح هنا: Ubuntu | Docker Docs
-
تحتاج إلى
sudoلجميع الأوامر -
يبدو أن هناك خطوة 3 مفقودة: تحتاج إلى إنشاء حساب مستخدم إداري. لإنشاء مسؤول جديد، قم بتشغيل الأمر التالي:
sudo d/rails admin:create -
كما هو مذكور في الموضوع، إذا كنت تستخدم WSL، فلن تعمل الروابط الرمزية لنظام ملفات Windows. إذا حاولت على أي حال، فستفسد التثبيت وستنتهي بك الأمر بفقدان الجواهر. لاستعادة الجواهر الخاصة بك، قم بتشغيل:
sudo d/bundle install
مرحباً.
أحاول تثبيت التطوير على Debian 12.
عندما أقوم بتشغيل الأمر…
d/boot_dev --init
… بعد فترة يظهر الخطأ التالي:
$ ../run-patch-package
patch-package 8.0.0
Applying patches...
@ember/jquery@2.0.0 ✔
babel-plugin-debug-macros@0.3.4 ✔
content-tag@1.1.2 ✔
ember-source@3.28.12 ✔
ember-this-fallback@0.4.0 (1 deprecation-name) ✔
ember-this-fallback@0.4.0 (2 themes) ✔
virtual-dom@2.1.1 ✔
Done in 70.39s.
Migrating database...
rake aborted!
Discourse::Utils::CommandError: /src/lib/discourse.rb:138:in `exec': node:internal/modules/cjs/loader:1080
throw err;
^
Error: Cannot find module 'esbuild'
Require stack:
- /src/app/assets/javascripts/theme-transpiler/build.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
at Module._load (node:internal/modules/cjs/loader:922:27)
at Module.require (node:internal/modules/cjs/loader:1143:19)
at require (node:internal/modules/cjs/helpers:121:18)
at Object.<anonymous> (/src/app/assets/javascripts/theme-transpiler/build.js:3:17)
at Module._compile (node:internal/modules/cjs/loader:1256:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [ '/src/app/assets/javascripts/theme-transpiler/build.js' ]
}
Node.js v18.17.1
/src/lib/discourse.rb:172:in `execute_command'
/src/lib/discourse.rb:138:in `exec'
/src/lib/discourse.rb:34:in `execute_command'
/src/lib/discourse_js_processor.rb:119:in `build_theme_transpiler'
/src/lib/tasks/assets.rake:313:in `block in <main>'
Tasks: TOP => db:migrate => assets:precompile:theme_transpiler
(See full trace by running task with --trace)
هل أفعل شيئًا خاطئًا؟
yarn install # سيؤدي هذا إلى إعادة تثبيت كل شيء بما في ذلك esbuild
# إزالة الحاوية التي تم تثبيتها سابقًا والتي بها خطأ
docker stop discourse_dev
docker rm discourse_dev
d/boot_dev --init
# سيطلب منك إدخال البريد الإلكتروني للمسؤول إذا نجح.
مرحباً. بعد وضع رابط رمزي في دليل discourse/plugin ثم إعادة التشغيل:
$ d/rails s
أتلقى الخطأ التالي:
https://github.com/rails/sprockets (at 3.x@f4d3dae) is not yet checked out. Run `bundle install` first
“Bundle install” لا يحل المشكلة. لقد جربت الكثير من الأشياء، ولكن لا شيء يبدو أنه يحل هذه المشكلة. إذا قمت بإزالة الرابط الرمزي في دليل الإضافات وأعدت التشغيل، فإن كل شيء يعمل بشكل جيد مرة أخرى. لقد جربت ذلك مع إضافات رسمية مختلفة أعرف أنها تعمل على تثبيتات discourse أخرى.
هل يعرف أحد سبب حدوث ذلك؟
هل يمكنك تجربة d/bundle install بدلاً من ذلك؟
يمكنني تشغيل d/bundle install، وهذا يعمل ويمكنني بعد ذلك بدء كل شيء، لكن المكون الإضافي لا يظهر مثبتًا في discourse.
لذلك أقوم بتشغيل d/shutdown_dev; d/boot_dev ولكن بعد ذلك يعطي رسالة الخطأ القديمة مرة أخرى https://github.com/rails/sprockets (at 3.x@f4d3dae) is not yet checked out. Run `bundle install` first
vOv
لقد قمت بتحسين هذا في
من المؤكد أنه من المربك الاضطرار إلى تشغيل d/bundle install يدويًا في كل مرة تقوم فيها بتمهيد بيئة التطوير. في هذه الأثناء، سيتعين عليك للأسف تشغيل d/bundle install في كل مرة تقوم فيها بتشغيل d/boot_dev.
أواجه هذا الخطأ باستمرار.
error تعذر كتابة الملف “/src/app/assets/javascripts/discourse/yarn-error.log”: “EACCES: permission denied, open ‘/src/app/assets/javascripts/discourse/yarn-error.log’”
error حدث خطأ غير متوقع: “EACCES: permission denied, mkdir ‘/src/app/assets/javascripts/node_modules’”.
هممم
أعتقد أن هذا هو نفس الشيء الموجود في هنا - لا يمكنني العثور على مكان تم حله فيه على أي حال.
هل تقوم بتشغيل هذا كمستخدم غير جذري بدون sudo؟
كان المستخدم الجذر.
أحاول تثبيت Discourse Development في WSL Docker - لقد وصلت إلى شاشة التهاني، ولكن بدون حساب مسؤول عالق.
عندما أحاول تشغيل d/rails admin:create أحصل على الخطأ stat bin/rails: no such file or directory: unknown
ما الذي أفتقده؟
شكرا