بناء صورة Discourse من discourse/discourse - كيفية تثبيت الإضافات

مرحباً،

هل يمكن لأي شخص تقديم المشورة بشأن بناء صورة Docker لـ Discourse تحتوي على عدد من المكونات الإضافية مدمجة بدلاً من تثبيتها عبر واجهة المستخدم؟

الخلفية - نريد الاستفادة من أحدث إصدار من Discourse أي discourse:stable ومما قرأته في دليل التثبيت والوثائق الأخرى هو أنه يمكننا أخذ هذه الصورة كصورة أساسية في ملف Dockerfile الخاص بنا ثم القيام بشيء مثل:

RUN cd /var/www/discourse/plugins && \
      git clone https://github.com/discourse/discourse-chat-integration.git

سيؤدي هذا إلى إضافة المكون الإضافي discourse-chat-integration إلى البناء. ثم في وقت التشغيل يمكننا تمرير جميع متغيرات البيئة المطلوبة، أي DISCOURSE_HOSTNAME و DISCOURSE_SMTP_DOMAIN و DISCOURSE_DB_HOST وما إلى ذلك بدلاً من ترميزها في ملف app.yml.

إذا كان بإمكان أي شخص تقديم المشورة بشأن ما سبق فسيكون ذلك محل تقدير كبير.

شكراً.

لا يمكنك تثبيت الإضافات من واجهة المستخدم. أنت تثبتها من ملف YML. إذا كنت تستخدم حاوية غير مدعومة بعد لم تقم ببنائها بنفسك باستخدام المشغّل (launcher)، فستفعل شيئًا مثل ما تقترحه.

لكن هذه الإضافة موجودة في النواة (core) (ولكن ربما ليست في الإصدار المستقر (stable) بعد؟).

إنها ليست مبرمجة بشكل ثابت حقًا في ملف YML. يُستخدم ملف YML لبناء وتشغيل الحاوية. يمكنك بناؤها ثم تشغيلها بنفسك، بأي طريقة تريد. يمكنك استخدام ./launcher start-cmd container-name (أو شيء من هذا القبيل، يمكنك البحث في المشغّل لترى ما إذا كنت قد أخطأت).

لذا، أعتقد أن ما تريد القيام به هو الاستمرار في استخدام المشغّل، وإضافة الإضافة، وتشغيل ./launcher bootstrap app للحاوية، ثم تشغيلها بالطريقة التي تريدها. يمكنك حتى دفعها إلى مستودع (repo) حيث يمكنك تشغيلها من جهاز آخر.
نعم، أعتقد أنه ربما لم يعد هناك إصدار مستقر، على الأقل ليس لفترة أطول. انظر RFC: A new versioning strategy for Discourse