ذهبت لتثبيت إضافة وبدأت في إظهار هذا الخطأ التالي في الجزء الذي أقوم فيه بـ ./launcher rebuild app
استخدمت ./discourse-doctor لكن لم يحل المشكلة
FAILED
--------------------
Pups::ExecError: if [ -z "$LETSENCRYPT_ACCOUNT_EMAIL" ]; then echo "LETSENCRYPT_ACCOUNT_EMAIL ENV variable is required and has not been set."; exit 1; fi failed with return #<Process::Status: pid 2296 exit 1>
Location of failure: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cmd"=>["if [ -z \"$LETSENCRYPT_ACCOUNT_EMAIL\" ]; then echo \"LETSENCRYPT_ACCOUNT_EMAIL ENV variable is required and has not been set.\"; exit 1; fi", "/bin/bash -c \"if [[ ! \\\"$LETSENCRYPT_ACCOUNT_EMAIL\\\" =~ ([^@]+)@([^\\\\.]+) ]]; then echo \\\"LETSENCRYPT_ACCOUNT_EMAIL is not a valid email address\\\"; exit 1; fi\""]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
324b6cc40db917188cb3d87640ff1a1c23142c551b71bc55b0f33ccd88e88af7
root@ForumPandex:/var/discourse# ./launcher rebuild app
x86_64 arch detected.
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
(unknown): could not find expected ':' while scanning a simple key at line 67 column 3 -e LANG=en_US.UTF-8
YAML syntax error. Please check your containers/*.yml config files.
يبدو أن لديك خطأ إملائي في ملف app.yml الخاص بك.
رسالة الخطأ الأولى تشير إلى بريدك الإلكتروني الخاص بـ Let’s Encrypt، لكن الرسالة الثانية تشير إلى أن لديك نقطتين مفقودتين. هل يمكنك رؤية أي شيء قمت بإضافته/حذفه بشكل واضح عن طريق الخطأ أثناء التحرير لإضافة المكون الإضافي؟
======================================== خطأ ========================================
خطأ غير متوقع
انتهت مهلة فتح اتصال TCP بـ email-smtp.us-east-1.amazonaws.com:25 (تتجاوز 5 ثوانٍ)
====================================== الحل =======================================
هذا ليس خطأ شائعًا. لا يوجد حل موصى به!
يرجى الإبلاغ عن رسالة الخطأ الدقيقة أعلاه إلى https://meta.discourse.org/
(وحل، إذا وجدت واحدًا!)
=======================================================================================
استبدال: SMTP_PASSWORD
استبدال: LETSENCRYPT_ACCOUNT_EMAIL
استبدال: DEVELOPER_EMAILS
استبدال: DISCOURSE_DB_PASSWORD
استبدال: إرسال البريد إلى
==================== تم! ====================
هل ترغب في تقديم نسخة متاحة للعامة من هذا الملف؟ (ص/ن)```
يجب أن تكون قادرًا على إعادة تشغيل الحاوية القديمة باستخدام
./launcher start app
ثم تحتاج إلى تسوية ملف الـ yml الخاص بك.
يجب أن يكون discourse doctor قد أعاد تشغيل الحاوية القديمة.
قد يكون أسهل شيء هو إعادة تسمية ملف app.yml الخاص بك إلى broken.yml، ثم تشغيل ./discourse-setup. سيؤدي ذلك إلى إنشاء ملف app.yml جديد، ولكن لا تحذف بياناتك الحالية.
جاري التحقق من اسم النطاق الخاص بك . . .
تحذير: لا يبدو أن المنفذ 443 للكمبيوتر يمكن الوصول إليه باستخدام اسم المضيف: www.dexforum.com.br].
تحذير: فشل الاتصال بـ http://www.dexforum.com.br] (المنفذ 80) أيضًا.
يشير هذا إلى أن www.dexforum.com.br] يحل إلى عنوان IP لا يصل إلى هذا
الجهاز الذي تقوم بتثبيت discourse عليه.
أول شيء يجب فعله هو التأكد من أن www.dexforum.com.br] يحل إلى عنوان IP الخاص بهذا الخادم.
عادةً ما تقوم بذلك في نفس المكان الذي اشتريت منه النطاق.
إذا كنت متأكدًا من أن عنوان IP يحل بشكل صحيح، فقد تكون هناك مشكلة في جدار الحماية.
قد يساعد البحث على الويب عن "فتح المنافذ خدمة السحابة الخاصة بك" (open ports YOUR CLOUD SERVICE).
تم تصميم هذه الأداة فقط للتثبيتات الأكثر شيوعًا. إذا لم تتمكن من حل
المشكلة المذكورة أعلاه، فستحتاج إلى تحرير containers/app.yml بنفسك ثم كتابة
./launcher rebuild app
حسنًا، لقد تمكنت الآن من إعداد discourse، ولكن عند إعادة البناء، يظهر هذا
(غير معروف): قيم التعيين غير مسموح بها في هذا السياق في السطر 98 العمود 12 -e LANG=en_US.UTF-8
خطأ في بناء جملة YAML. يرجى التحقق من ملفات تكوين containers/*.yml الخاصة بك.
نعم، هذا هو المكان الذي توجد فيه خطافات after_code للإضافات.
@danielabc إذا كنت تريد منا مساعدتك، فأنت بحاجة إلى تقديم ملاحظات حول الخطوات التي نقدمها، ويفضل أن يكون ذلك دون الخروج عن النص. سيأتي تثبيت الإضافات بعد أن نساعدك في إعادة بناء نسخة عاملة.
لقد تمكنت من حل المشكلة، ولكن هل تعرف ما الذي وجدته غريبًا، وهو أن جميع ملفات .yml التي أنشأها Discourse كانت بتنسيق خاطئ؟ هل هذا ممكن؟ لم أفعل شيئًا، حتى أنني لم أقم بتحريره، ولكن تم إنشاء ملف .yml دائمًا بتنسيق خاطئ.
لقد استخدمت https://www.yamllint.com/ الذي وجدته على جوجل، وقد ساعدني في الحصول على التنسيق الصحيح، وأخيرًا تمكنت من إجراء إعادة بناء.
لكنني لم آخذ في الاعتبار أبدًا أن ملف .yml يمكن أن يتم تنسيقه بشكل سيء بواسطة النظام، وقد تركني هذا مرتبكًا.
لم يتغير Discourse-setup منذ حوالي ستة أشهر.
الطريقة الوحيدة التي يمكنني التفكير بها لإنتاج ملف yaml مشوه هي من خلال الردود على المطالبات.
هل نسخت ولصقت الردود، أم أدخلتها يدويًا؟
لقد قمت للتو بإنشاء أمر لإنشاء ملف .yml جديد، لكنني لم أقم بتغيير أي شيء في ملف .yml الجديد، لقد قمت فقط بإعادة البناء مما أدى إلى حدوث خطأ بسبب تنسيق سيء