خطأ أثناء التثبيت

أهلاً يا رفاق،

ربما تمت الإجابة على هذا الأمر ومعالجته، لكنني لم أجده هنا. لذلك، نشرت طلبي الخاص، على أمل أن يتمكن شخص ما من توضيح ما يحدث:

(unknown): لم يتم العثور على المفتاح المتوقع أثناء تحليل تعيين كتلة في السطر 40 العمود 3 -e LANG=en_US.UTF-8
خطأ في بناء جملة YAML. يرجى التحقق من ملفات تكوين containers/*.yml الخاصة بك.

شكراً،

هل هذا تثبيت جديد أم أنك تستخدم ملف yml قديم لبناء حاوية؟

إنها عملية تثبيت جديدة وتم القيام بها عدة مرات ولكن هذه هي المرة الأولى التي أواجه فيها هذا الخطأ :no_entry_sign:

هل يمكنك مشاركة ملف app.yml الخاص بك بعد إزالة المعلومات الحساسة؟

في أي جزء منه؟؟ من الأعلى إلى الأسفل؟؟

نعم، الملف بأكمله وقم بإزالة أي معلومات حساسة.

 ## هذا هو القالب الشامل المستقل لحاوية Discourse Docker
  2 ##
  3 ## بعد إجراء تغييرات على هذا الملف، يجب عليك إعادة البناء
  4 ## /var/discourse/launcher rebuild app
  5 ##
  6 ## كن حذرًا جدًا عند التحرير!
  7 ## ملفات YAML حساسة للغاية للأخطاء في المسافات البيضاء أو المحاذاة
  8 ## قم بزيارة http://www.yamllint.com/ للتحقق من صحة هذا الملف حسب الحاجة
  9
 10 templates:
 11   - "templates/postgres.template.yml"
 12   - "templates/redis.template.yml"
 13   - "templates/web.template.yml"
 14   - "templates/web.ratelimited.template.yml"
 15 ## قم بإلغاء التعليق على هذين السطرين إذا كنت ترغب في إضافة Lets Encrypt (https)
 16   #- "templates/web.ssl.template.yml"
 17   #- "templates/web.letsencrypt.ssl.template.yml"
 18
 19 ## ما هي منافذ TCP/IP التي يجب أن تعرضها هذه الحاوية؟
 20 ## إذا كنت تريد أن تشارك Discourse منفذًا مع خادم ويب آخر مثل Apache
 21 ## راجع https://meta.discourse.org/t/17247 للحصول على التفاصيل
 22 expose:
 23   - "8080:80"   # http
 24   #- "443:443" # https
 25
 26 params:
 27   db_default_text_search_config: "pg_catalog.english"
 28
 29   ## قم بتعيين db_shared_buffers إلى حد أقصى 25٪ من الذاكرة الإجمالية.
 30   ## سيتم تعيينه تلقائيًا بواسطة bootstrap بناءً على ذاكرة الوصول العشوائي المكتشفة، أو يمكنك تجاوز ذلك
 31   #db_shared_buffers: "256MB"
 32
 33   ## يمكن أن يحسن أداء الفرز، ولكنه يضيف استخدام الذاكرة لكل اتصال
 34   #db_work_mem: "40MB"
 35
 36   ## أي مراجعة Git يجب أن تستخدمها هذه الحاوية؟ (الافتراضي: tests-passed)
 37   #version: tests-passed
 38
 39 env:
 40   LC_ALL: en_US.UTF-8
 41   LANG: en_US.UTF-8
 42   LANGUAGE: en_US.UTF-8
 43   # DISCOURSE_DEFAULT_LOCALE: en
 44
 45   ## كم عدد طلبات الويب المتزامنة التي يتم دعمها؟ يعتمد على الذاكرة وأنوىة وحدة المعالجة المركزية.
 46   ## سيتم تعيينه تلقائيًا بواسطة bootstrap بناءً على وحدات المعالجة المركزية المكتشفة، أو يمكنك تجاوز ذلك
 47   #UNICORN_WORKERS: 3
 48
 49   ## TODO: اسم النطاق الذي ستستجيب له هذه النسخة من Discourse
 50   ## مطلوب. لن تعمل Discourse مع رقم IP عارٍ.
 51   DISCOURSE_HOSTNAME: 'community.MYWESITE.com'
 52
 53   ## قم بإلغاء التعليق إذا كنت تريد بدء تشغيل الحاوية بنفس
 54   ## اسم المضيف (-h) المحدد أعلاه (الافتراضي "$hostname-$config")
 55   #DOCKER_USE_HOSTNAME: true
 56
 57   ## TODO: قائمة بالبريد الإلكتروني مفصولة بفواصل سيتم جعلها مسؤولة ومطورة
 58   ## عند التسجيل الأولي مثال 'user1@example.com,user2@example.com'
 59   DISCOURSE_DEVELOPER_EMAILS: 'MYEMAIL@gmail.com'
 60
 61   ## TODO: خادم البريد SMTP المستخدم للتحقق من الحسابات الجديدة وإرسال الإشعارات
 62   # عنوان SMTP واسم المستخدم وكلمة المرور مطلوبة
 63   # تحذير الحرف '#' في كلمة مرور SMTP يمكن أن يسبب مشاكل!
 64   DISCOURSE_SMTP_ADDRESS: XXXXXXXXXXXXX.COM
 65   #DISCOURSE_SMTP_PORT: 587
 66   DISCOURSE_SMTP_USER_NAME: SMTP_Injection
 67   DISCOURSE_SMTP_PASSWORD: XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 68   #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (اختياري، افتراضي صحيح)
 69   #DISCOURSE_SMTP_DOMAIN: discourse.example.com    # (مطلوب من قبل بعض مقدمي الخدمة)
 70    DISCOURSE_NOTIFICATION_EMAIL: MYEMAIL@gmail.com    # (العنوان الذي سيتم إرسال الإشعارات منه)
 71
 72   ## إذا أضفت قالب Lets Encrypt، قم بإلغاء التعليق أدناه للحصول على شهادة SSL مجانية
 73   #LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
 74
 75   ## عنوان CDN http أو https لهذه النسخة من Discourse (تم تكوينه للسحب)
 76   ## راجع https://meta.discourse.org/t/14857 للحصول على التفاصيل
 77   #DISCOURSE_CDN_URL: https://discourse-cdn.example.com
 78
 79   ## مفتاح عنوان IP الجغرافي MaxMind للبحث عن عنوان IP
 80   ## راجع https://meta.discourse.org/t/-/137387/23 للحصول على التفاصيل
 81   #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
 82
 83 ## الحاوية Docker عديمة الحالة؛ يتم تخزين جميع البيانات في /shared
 84 volumes:
 85   - volume:
 86       host: /var/discourse/shared/standalone
 87       guest: /shared
 88   - volume:
 89       host: /var/discourse/shared/standalone/log/var-log
 90       guest: /var/log
 91
 92 ## المكونات الإضافية هنا
 93 ## راجع https://meta.discourse.org/t/19157 للحصول على التفاصيل
 94 hooks:
 95   after_code:
 96     - exec:
 97         cd: $home/plugins
 98         cmd:
 99             - git clone https://github.com/discourse/docker_manager.git
100
101 ## أي أوامر مخصصة لتشغيلها بعد البناء
102 run:
103   - exec: echo "Beginning of custom commands"
104   ## إذا كنت تريد تعيين عنوان البريد الإلكتروني 'من' للتسجيل الأول الخاص بك، قم بإلغاء التعليق والتغيير:
105   ## بعد الحصول على البريد الإلكتروني الأول للتسجيل، أعد التعليق على السطر. يحتاج فقط إلى التشغيل مرة واحدة.
106   #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
107   - exec: echo "End of custom commands"

أزل المسافة هنا

image

لقد أصلح هذا الخطأ ووصل التطبيق إلى النهاية ولكن مع خطأ آخر لم يتم تشغيل الخطاب!

لقد قمت بالتمرير للأعلى لمعرفة ما كان موجودًا حيث قيل ولكن لم يتم ذكر شيء سوى المنفذ 6379 غير مفتوح وهذا:

على الرغم من أن خيار "loose" تم تعيينه على "false" في تكوين @babel/preset-env الخاص بك، فلن يتم استخدامه لـ @babel/plugin-proposal-private-property-in-object نظرًا لأنه تم تعيين خيار وضع "loose" على "true" لـ @babel/plugin-proposal-class-properties.
يجب أن يكون خيار "loose" هو نفسه لـ @babel/plugin-proposal-class-properties و @babel/plugin-proposal-private-methods و @babel/plugin-proposal-private-property-in-object (عند تمكينها): يمكنك إسكات هذا التحذير عن طريق إضافة
        ["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
صراحةً إلى قسم "plugins" في تكوين Babel الخاص بك.
على الرغم من أن خيار "loose" تم تعيينه على "false" في تكوين @babel/preset-env الخاص بك، فلن يتم استخدامه لـ @babel/plugin-proposal-private-methods نظرًا لأنه تم تعيين خيار وضع "loose" على "true" لـ @babel/plugin-proposal-private-property-in-object.
يجب أن يكون خيار "loose" هو نفسه لـ @babel/plugin-proposal-class-properties و @babel/plugin-proposal-private-methods و @babel/plugin-proposal-private-property-in-object (عند تمكينها): يمكنك إسكات هذا التحذير عن طريق إضافة
        ["@babel/plugin-proposal-private-methods", { "loose": true }]
صراحةً إلى قسم "plugins" في تكوين Babel الخاص بك.

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

لقد وعدت شخصًا ما هنا بالإبلاغ عما إذا كانت الأمور تسير على ما يرام عند تثبيت الخطاب ومواقع أخرى على نفس الخادم وكنت أحاول جاهدًا الحصول عليها بشكل صحيح ولكنها لم تحدث بعد :notes:

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

يبدو أنك تحاول النشر على منفذ مختلف. هل تحاول وضع Discourse خلف وكيل عكسي؟

أقترح التراجع عن بيان expose في الوقت الحالي ومحاولة الوصول عبر المنفذ 80 أولاً إذا كان الأمر كذلك.

إذا كنت تحاول فقط تثبيت Discourse على شيء آخر غير المنفذين 80/443 للوصول المباشر، فيرجى ملاحظة أن هذا لن يعمل وغير مدعوم.

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

نعم يا ستيفن، كنت أفعل ذلك ولكن قررت تثبيت discourse أولاً واللعب بأشياء أخرى لاحقًا…!

أنا على وشك الانتهاء من التثبيت الجديد وأنا أكتب :cyclone:

يجب أن أقلل من تناول الكافيين :cactus:

حسنًا، لقد فعلت الشيء الصحيح وقمت بتثبيت نسخة جديدة لبدء يومي بها ولكن لا يمكنني الوصول إلى أي شيء؛

  1. إذا قمت بفحص forum.mywebsite.com، أحصل على صفحة فارغة لا يظهر فيها شيء على الإطلاق باستثناء أيقونة discourse في الزاوية العلوية اليسرى.

  2. إذا استخدمت https معها، أحصل على خطأ فشل الاتصال الآمن بدلاً من الصفحة الرئيسية الفعلية.

لقد تحققت من جميع إعدادات DNS، A، TXT، CNAME …! كل شيء على ما يرام، في الواقع لقد قمت بتثبيته وحصلت على صفحة تسجيل المسؤول ولكن كان عليّ تفعيله عبر وحدة تحكم SSH وتم الأمر بشكل جيد ولكن لم يظهر شيء بعد تلك الخطوة!!!

هل هناك من يساعد هذا الشخص الضائع :cry:

هل تقوم بالتثبيت مع تمكين Let’s Encrypt؟
إذا كان الأمر كذلك، فكم مرة حاولت التثبيت على هذا الاسم المضيف بين هذا التثبيت والتثبيت الأخير؟

على حد علمي. لكن النطاق والنطاقات الفرعية كانت على شهادة SSL الخاصة بـ Cloudflare وهذه الأدوات …!
لقد أوقفتها قبل دقائق قليلة وتحققت من الموقع وهنا وهناك كنت تقول لي هذا :smiley:
أنا أعطيها فرصة أخرى لمعرفة كيف ستكون الأمور لاحقًا!
شكرًا Stephen، أنت منقذ كما هو الحال دائمًا :slight_smile:

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

على الرغم من أن خيار "loose" تم تعيينه على "false" في تكوين @babel/preset-env الخاص بك، فلن يتم استخدامه لـ @babel/plugin-proposal-private-property-in-object نظرًا لأن خيار وضع "loose" تم تعيينه على "true" لـ @babel/plugin-proposal-class-properties.
يجب أن يكون خيار "loose" هو نفسه لـ @babel/plugin-proposal-class-properties و @babel/plugin-proposal-private-methods و @babel/plugin-proposal-private-property-in-object (عند تمكينها): يمكنك إسكات هذا التحذير عن طريق إضافة
        [\"@babel/plugin-proposal-private-property-in-object\", { \"loose\": true }]
بشكل صريح إلى قسم "plugins" في تكوين Babel الخاص بك.
على الرغم من أن خيار "loose" تم تعيينه على "false" في تكوين @babel/preset-env الخاص بك، فلن يتم استخدامه لـ @babel/plugin-proposal-private-methods نظرًا لأن خيار وضع "loose" تم تعيينه على "true" لـ @babel/plugin-proposal-private-property-in-object.
يجب أن يكون خيار "loose" هو نفسه لـ @babel/plugin-proposal-class-properties و @babel/plugin-proposal-private-methods و @babel/plugin-proposal-private-property-in-object (عند تمكينها): يمكنك إسكات هذا التحذير عن طريق إضافة
        [\"@babel/plugin-proposal-private-methods\", { \"loose\": true }]
بشكل صريح إلى قسم "plugins" في تكوين Babel الخاص بك.

كل التوفيق :love_you_gesture:

لدي نفس المشكلة

يمكنك تجاوزها. إذا كنت تعرف ما تعنيه، فستعرف كيفية التعامل معها إذا كانت هناك حاجة. كلنا الآخرون… مجرد تحذير آخر لا يتطلب أي إجراء.