Skip to main content
40-overleaf.yaml
يُجري التشغيل الأول عمليات ترحيل قاعدة البيانات ويستغرق دقيقة أو دقيقتين. يكون الـ pod جاهزًا عندما يستجيب /status؛ افتح بعد ذلك OVERLEAF_SITE_URL.

لماذا يبدو ملف manifest بهذا الشكل

  • وحدة تخزين البيانات. كل ما يقع تحت /var/lib/overleaf (ملفات المشاريع، والسجلّ، والملفات المرفوعة) يوجد على الـ PVC. تبقى البيانات على عقدة واحدة مع التخزين المحلي للعقدة مثل local-path؛ أما مع التخزين الكتلي الشبكي فيمكن للـ pod الانتقال بين العقد.
  • وحدات تخزين الترجمة ومقبس Docker. يطلب Ayakaleaf Pro من Docker الخاص بالعقدة تشغيل حاوية TeX Live ويمرّر إليها مجلد الترجمة الخاص بالمشروع عبر مساره على العقدة. لذلك تكون هذه المجلدات وحدات تخزين من النوع hostPath، وتتكرر مساراتها في SANDBOXED_COMPILES_HOST_DIR_*. ومحتواها بيانات مؤقتة لا تحتاج إلى نسخ احتياطي.
  • enableServiceLinks: false. يضيف Kubernetes إلى كل pod متغيّرات بأسلوب Docker لكل Service في مساحة الأسماء: فتصبح الـ Service ‏redis ‏REDIS_PORT=tcp://10.x.x.x:6379، والـ Service ‏git-bridge ‏GIT_BRIDGE_PORT=tcp://.... تقرأ بعض خدمات Overleaf متغيّرات بهذه الأسماء. في هذا الـ pod تكون الأولوية للإعدادات من OVERLEAF_REDIS_* ومن الـ ConfigMap، لكن git-bridge يأخذ GIT_BRIDGE_PORT كمنفذ له ويتوقف (راجع تكامل Git). يؤدي تعطيل هذه الروابط إلى إبقاء البيئة مقتصرة على ما تضبطه أنت.
  • Recreate. يجب ألا يستخدم اثنان من الـ pods أبدًا وحدة تخزين البيانات نفسها أو يُجريا عمليات الترحيل في الوقت ذاته.
  • إتاحته للوصول. تستجيب الـ Service من النوع NodePort على المنفذ 30080 في كل عقدة. في بيئة الإنتاج، ضع متحكّم الـ ingress أو موازن الأحمال لديك في المقدّمة وأنهِ TLS هناك؛ ويجب أن يسمح باتصالات WebSocket، ومهلات طلبات تبلغ 10 دقائق (عمليات الترجمة الطويلة)، وعمليات رفع بحجم 50 MB، وأن يمرّر X-Forwarded-For وX-Forwarded-Proto.
آخر تعديل في ٢ نوفمبر ٢٠٢٦