كابروفر هو في الأساس هيروكو مستضاف ذاتيًا، بالإضافة إلى القدرة على نشر حاوية دوكر بنقرة واحدة.
توجد التفاصيل الخاصة بتطبيقات النقرة الواحدة هذه في ملف .yml — يوجد حاليًا ملف واحد لـ Discourse، ولكنه يعتمد على الإصدار 2.4.4 من Discourse.
يعتمد التثبيت على متغير البيئة ALLOW_EMPTY_PASSWORD=yes.
لا يعمل تثبيت إصدار أحدث من Discourse من الإصدار 2.4.4: فهو يرمي أخطاء تطلب توفير كلمات مرور PostgreSQL و Redis في متغيرات البيئة. عند توفيرها، يفشل بطريقة أخرى (استسلمت عن المحاولة، لذلك لا أتذكر!).
لا يعمل تثبيت الإصدار 2.4.4 ومحاولة الترقية من لوحة المعلومات، لأنه يرمي خطأ بأن Sidekiq لا يعمل، ولا يمكنك فتح واجهة سطر أوامر في التطبيق.
لا أفهم كيف يعمل Discourse أو Docker أو Caprover بما يكفي لتعديل ملف .yml لجعله يعمل مع إصدار أحدث!
هل لدى أي شخص أي إرشادات؟
هل هناك أي تحديثات حول هذا؟ أحاول أيضًا تثبيت Discourse عبر Caprover، ولكن 2.4.4 فقط هو الذي يعمل ويستخدم كلمات المرور الفارغة غير الآمنة. كلما حاولت استخدام أي إصدارات أخرى، فإنها لا تعمل.
عندما يتم توفيرها، فإنها تفشل بطريقة أخرى (لقد استسلمت في المحاولة، لذلك لا أتذكر!).
من المضحك أنني اتبعت نفس المسار بالضبط، وحاولت تثبيتًا أحدث، وقمت بتعيين متغيرات بيئة كلمة مرور postgres، وحاولت تحديث كلمة مرور postgres في الحاوية، ومع ذلك لم تنجح…
أيضًا، فإن الاتصال بأشخاص Caprover لا يفعل الكثير، حيث إنهم يتعاملون فقط مع المنصة نفسها، ويجب على كل مطور تطبيقات توفير ملف تكوين بنقرة واحدة خاص به بناءً على حاويات Docker. أيضًا، نظرًا لأن 2.4.4 يعمل، أفترض أنه يجب أن يكون من السهل معرفة ما تغير وإصلاحه للإصدار الأخير؟
تقوم أطراف ثالثة بإنشاء حزم لتشجيع المستخدمين على استخدام منتجهم أو خدمتهم أو منصتهم.
كما ترى، فإن هذه الحزم ليست مُصانة جيدًا. لا يمكننا تحمل أي من الديون التقنية التي تتكبدها، ولكن يمكننا مساعدتك في تثبيت discourse بطريقة ستستمر في العمل في المستقبل.
أنت مرحب بك لتقديم هذا الافتراض. لقد أظهرت سنوات من مساعدة المستخدمين هنا أن هذه الحزم يمكن أن تتعطل بطرق غير متوقعة. الأمر متروك لك ولـ caprover ومطور الحزمة.
أتفهم ذلك، فأنا مطور تطبيقات بنفسي، ولكن هناك بالتأكيد طرق يمكن للمستخدمين من خلالها تثبيت التطبيق بسهولة أكبر. لهذا السبب، على سبيل المثال، توفرون صورة Docker، على الرغم من أن Docker هو أيضًا طرف ثالث. أعتقد أيضًا أنني رأيت على DigitalOcean تطبيقًا بنقرة واحدة لـ Discourse. أعتقد أن الأمر متروك للمطورين لتوفير طرق مختلفة يمكن للمستخدمين من خلالها تثبيت منتجهم ودعم منصات مختلفة.
نعم، الأشياء تتعطل بمرور الوقت إذا لم يدعمها المطور، لهذا السبب أعتقد أنه يقع على عاتق المطور إنشاءها وصيانتها، وتقديم طريقة سهلة للمستخدمين لتثبيت منتجهم في بيئات مختلفة.
أليس هذا هو نفس الشيء مثل قيام المطور بتوفير بناء لنظام Windows، وآخر لنظام Linux؟ نعم، يمكن للمطور أن يقول إننا ندعم Linux فقط ونجبر المستخدمين على استخدامه إذا كانوا يريدون المنتج، ولكن يمكنهم أيضًا إضافة دعم لمنصات أخرى.
أيضًا، مما رأيته حتى الآن مع CapRover، كل ما يتعين القيام به هو إنشاء ملف yml صحيح، ومن غير المرجح أن يتعطل بمرور الوقت ما لم يتلق المنتج نفسه (أو التقنيات التي يستخدمها) تحديثات مكسورة.