Docker للتطوير مقابل خادم rails و ember

لقد قرأت الموضوع التالي حول إعداد بيئة التطوير لـ discourse.
meta discourse org/t/install-discourse-on-macos-for-development/15772

ومع ذلك، لم يذكر شيئًا عن تضمين discourse في docker.

لكن دليل الإنتاج يذكر “docker”
github com/discourse/discourse/blob/main/docs/INSTALL-cloud.md#5-install-discourse

أنا على استعداد لاستضافة الموقع في AWS (أمازون)

علاوة على ذلك، لاحظت وجود مستودع git لـ docker نفسه
github com/docker/compose

وصورة discourse لـ docker في git
github com/discourse/discourse_docker

لقد قمت بالفعل بتثبيت discourse على نظام macOS الخاص بي عن طريق استنساخ مستودع git لـ discourse وتشغيله على خادم rails و Ember CLI، ويعمل بشكل صحيح. لكنني لم أستخدم أي “docker”.

أسئلتي هي:

  1. هل يمكنني استخدام خادم AWS لتثبيت docker من https://github.com/docker/compose ثم وضع صورة discourse https://github.com/discourse/discourse_docker داخل هذا docker؟ هل هذا جيد؟ هل هناك أي طريقة أخرى صحيحة؟

  2. أنا على استعداد لاستخدام قاعدة بيانات الخادم المحلي. لذا، هل ستكون هناك أي مشكلة عندما أرغب في نسخ النسخ الاحتياطية (المشاركات/المواضيع التي تم إنشاؤها أثناء وجودي على الخادم المحلي) إلى بيئة الإنتاج (خادم AWS الفعلي)؟

في الوقت الحالي، أقوم بإنشاء بعض المشاركات الوهمية (المشاركات المناسبة) أثناء وجودي على الخادم المحلي، لذلك لن يكون الموقع فارغًا عندما يصبح متاحًا للجمهور.
هل هذه هي الطريقة الصحيحة أم يمكن تعيين الموقع في وضع “قيد الإنشاء” أو شيء من هذا القبيل حتى في خادم AWS الفعلي، حتى لا يرى الناس الموقع الفارغ؟ حتى أتمكن من إنشاء بعض المشاركات الافتراضية أثناء وجودي على الخادم الفعلي؟

للحصول على أفضل دعم من المجتمع، استخدم التثبيت القياسي للإنتاج. يقوم ذلك بإعداد حاوية Docker وقاعدة بيانات تلقائيًا حتى لا تضطر إلى القلق بشأن ذلك بشكل منفصل.

نعم، يمكن نشر هذا على AWS.

أقترح استخدام هذا النهج في الوقت الحالي حتى تصبح على دراية تامة بـ Discourse وتتمكن من الإجابة على أسئلتك بنفسك :wink:

مبدئيًا، يمكنك تعيين موقعك على “تسجيل الدخول مطلوب” (في إعدادات الموقع) للحفاظ عليه خاصًا - لا يوجد وضع “قيد الإنشاء” بشكل خاص.

4 إعجابات

وربما must approve users أيضًا في حال قام أي شخص بالتسجيل عندما لا تكون تنظر.

3 إعجابات

كما قال روبرت، بما أنك لا ترغب في تطوير الإضافات وهدفك هو فقط تشغيل موقع ويب، فأنت تريد إجراء تثبيت قياسي (أسهل طريقة هي مجرد تشغيل EC2 بذاكرة وصول عشوائي (RAM) بسعة 2 جيجابايت وقرص بسعة 40 جيجابايت - يمكنك العمل بأقل من ذلك، ولكني لا أوصي بذلك). سيسمح لك هذا أيضًا بتكوين أشياء مثل أسماء النطاقات وتسجيل الدخول الاجتماعي وما إلى ذلك، والتي لا يمكنك القيام بها في تثبيت التطوير.

ولكن يمكنك عمل نسخة احتياطية من موقع التطوير الخاص بك واستعادتها إلى موقع الإنتاج.

4 إعجابات

شكراً على ردك.
هل تقصد عمل نسخة احتياطية من قاعدة بيانات postgres. هل هذا صحيح؟ أو مجرد النقر على زر النسخ الاحتياطي في لوحة أدوات المسؤول في discourse؟

لقد اشتريت بالفعل ذاكرة وصول عشوائي بسعة 2 جيجابايت وقرصًا بسعة 100 جيجابايت، ولا أعرف ما إذا كنت سأحتاجها على الإطلاق. قد أستضيف مواقع متعددة. أعتقد أن ذاكرة الوصول العشوائي لن تكون كافية لموقعين أو أكثر على أي حال؟

من غير المعتاد للغاية نسخ المحتوى من تثبيت تطوير إلى بيئة الإنتاج في أي حال.

هل تعد محتواك في بيئة الإنتاج؟ إذا كان خاصًا، فلديك كل الوقت في العالم.

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

نعم سأفعل ذلك، كان الأمر فقط لأن محركات البحث ستلاحظه وتسجله كموقع “غير متاح للوصول” وما إلى ذلك، لا أعرف.

ثم انشرها علنًا في أقرب وقت ممكن؟ يمكنك مراقبة الأمور من خلال أدوات مثل Google Search Console (اعتمادًا على الولاية القضائية)

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

حسناً، سأقوم ببناء الموقع عبر الإنترنت كبيئة إنتاج. يبدو أن هذا سيكون أقل إزعاجاً/متاعب. شكراً لك.

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

نعم، مشكلة أقل بكثير أعتقد. يمكن أن تستغرق عمليات التثبيت القياسية 20 دقيقة فقط للنشر.

يمكنك أيضًا تجربة موقع تطوير لاحقًا إذا كنت ترغب في الخوض في تطوير المكونات الإضافية.

إعجابَين (2)

إنه كذلك، لكنني فعلت ذلك عند تشغيل استيراد على مثيل dev.

هذا لا يزال توصيتي أيضًا.

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

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