@Falco @pfaffman شكراً لكم، لقد أوضحت إجاباتكم شكوكي.
أترك هنا إعداد ملف app.yml الخاص بي في حال كان مفيداً لأي شخص يحاول تحميل الإضافات المحلية إلى Discourse من جهاز المضيف.
## حاوية Docker عديمة الحالة؛ يتم تخزين جميع البيانات في /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
- volume:
host: /var/discourse/plugins
guest: /var/plugins
## تذهب الإضافات إلى هنا
## راجع https://meta.discourse.org/t/19157 للحصول على التفاصيل
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- cp -a /var/plugins/. $home/plugins/
في إعدادي، أحافظ على جميع الإضافات المخصصة في /var/discourse/plugins على المضيف.
تصبح الدليل المثبتة متاحة داخل الحاوية كـ /var/plugins، وخلال خطاف after_code، الأمر:
cp -a /var/plugins/. $home/plugins/
ينسخ جميع الإضافات المثبتة إلى دليل الإضافات الأصلي في Discourse ($home/plugins، وعادةً ما يكون /var/www/discourse/plugins).
هذا يجعل من الممكن إدارة الإضافات مباشرة من المضيف دون استخدام تثبيت الإضافات المعتمد على git أو الاعتماد على خدمات الاستضافة التابعة لأطراف ثالثة.