البيانات الدائمة
يحتاج Overleaf Toolkit إلى تخزين بيانات دائمة، مثل الملفات اللازمة لترجمة مشاريع LaTeX، ومحتويات قاعدة بيانات MongoDB. ويتحقق ذلك عبر ربط (mount) بعض المجلدات من الجهاز المضيف داخل حاويات Docker، وكتابة البيانات إلى تلك المجلدات.مجلدات البيانات
تتطلب الحاويةsharelatex مجلدًا لتخزين البيانات المتعلقة بعمليات ترجمة LaTeX. يتم تعيين هذا المجلد باستخدام المتغير OVERLEAF_DATA_PATH في config/overleaf.rc.
تتطلب الحاوية mongo، إذا كانت مفعّلة، مجلدًا لتخزين ملفات قاعدة البيانات الخاصة بها، والأمر نفسه ينطبق على الحاوية redis. ويمكن أيضًا إعداد هذه المجلدات في config/overleaf.rc.
أذونات الملفات
نظرًا لأن Docker يعمل بصلاحياتroot، فستصبح مجلدات البيانات مملوكة للمستخدم root، حتى لو كان Toolkit يُستخدم من قِبل مستخدم غير root. هذه ليست مشكلة، لكن من المفيد الانتباه إليها إذا كنت تنوي تعديل البيانات الدائمة من خارج الحاويات.
موقع ملفات الإعداد
توجد جميع ملفات الإعداد المملوكة للمستخدم في المجلدconfig/.
هذا المجلد مستثنى من نظام التحكم في المراجعات git، لذا لن يتغير عند تحديث شيفرة Toolkit. ولن يغيّر Toolkit أي بيانات في المجلد config/ دون إذنك.
لن تُطبَّق التغييرات على ملفات الإعداد تلقائيًا على الحاويات الموجودة، حتى لو تم إيقاف الحاوية وإعادة تشغيلها (باستخدام
bin/stop و bin/start). لتطبيق التغييرات، شغّل bin/up، وفي الخلفية سيقوم docker compose تلقائيًا بتطبيق تغييرات الإعداد على حاوية جديدة. (أو شغّل bin/up -d إذا كنت تفضّل عدم الارتباط بسجلات Docker.)الملف overleaf.rc
يحتوي الملف config/overleaf.rc على أهم إعدادات المستوى الأعلى التي يستخدمها Toolkit. ويتضمن عبارات تعيّن المتغيرات بالصيغة: VARIABLE_NAME=value
للاطلاع على تفصيل جميع خيارات الإعداد المتاحة، راجع قسم الإعدادات.
الملف variables.env
يحتوي الملف config/variables.env على متغيرات البيئة التي يتم تحميلها في الحاوية sharelatex، وتُستخدم لإعداد الخدمات المصغّرة لـ Overleaf. ومن بينها اسم التطبيق كما يظهر في ترويسة واجهة الويب، وإعدادات إرسال البريد الإلكتروني، وإعدادات مميزة أخرى مثل SSO للاستخدام مع Server Pro.
للاطلاع على تفصيل جميع متغيرات البيئة المتاحة، راجع قسم متغيرات البيئة.
الملف version
يحتوي الملف config/version على رقم إصدار صورة Docker التي ستُستخدم لإنشاء النسخة العاملة من خادم Overleaf الخاص بك.
لن تُطبَّق التغييرات على ملفات الإعداد هذه تلقائيًا على الحاويات الموجودة، حتى لو تم إيقاف الحاوية وإعادة تشغيلها (باستخدام
bin/stop و bin/start). لتطبيق تغييراتك، شغّل bin/up، وسيقوم Toolkit تلقائيًا بإنشاء حاوية جديدة لك مع تطبيق تغييرات الإعداد.الملف docker-compose.override.yml
إذا كان الملف config/docker-compose.override.yml موجودًا، فسيتم تضمينه عند استدعاء docker compose. وهذا مفيد لتجاوز الإعدادات الخاصة بـ Docker Compose.
راجع توثيق docker-compose لمزيد من التفاصيل.
