> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# الترحيل من docker-compose.yml إلى Toolkit

> ترحيل نشر Overleaf القائم على Docker Compose إلى Toolkit.

إذا كنت تستخدم حاليًا Docker Compose عبر ملف `docker-compose.yml`، فإن الترحيل إلى Toolkit يمكن أن يجعل نشر نسخة Overleaf المستضافة محليًا وترقيتها وصيانتها أسهل.

للترحيل، ستحتاج إلى تحويل إعداد Docker Compose الحالي إلى الصيغة التي يستخدمها Toolkit. تتضمن هذه العملية نسخ الإعدادات الحالية إلى Toolkit.

سيرشدك هذا الدليل خلال كل خطوة من خطوات هذه العملية، لضمان ترحيل سلس من Docker Compose إلى Toolkit.

<Info>
  هذه التعليمات مخصصة للإصدار v4.x وما قبله. لذلك تستخدم جميع المتغيرات البادئة `SHARELATEX_` بدلًا من `OVERLEAF_`.
</Info>

<Steps>
  <Step title="استنساخ مستودع Toolkit">
    أولًا، استنسخ مستودع Toolkit إلى الجهاز المضيف:

    ```bash theme={null}
    git clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit
    ```

    بعد ذلك، شغّل الأمر `bin/init` لتهيئة Toolkit بإعداداته الافتراضية.
  </Step>

  <Step title="تعيين الصورة والإصدار">
    في ملف `docker-compose.yml` النموذجي، تُعرَّف الصورة والإصدار في وصف المكوّن، على سبيل المثال:

    ```yaml theme={null}
    version: '2.2'
    services:
        sharelatex:
            restart: always
            # Server Pro users:
            # image: quay.io/sharelatex/sharelatex-pro
            image: sharelatex/sharelatex:3.5.13
    ```

    عند استخدام Toolkit، يُحدَّد اسم الصورة تلقائيًا؛ والمطلوب الوحيد هو ضبط `SERVER_PRO=true` في **config/overleaf.rc** لاختيار صورة Server Pro، أو `SERVER_PRO=false` لاستخدام Community Edition.

    يُعيَّن رقم إصدار Server Pro/Community Edition المطلوب في الملف **config/version**. يتطلب Toolkit رقم إصدار محددًا مثل `4.2.3`. إذا كنت تستخدم `latest`، فيمكنك استخدام `bin/images` للعثور على معرّف الصورة لإصدار `latest` المحلي لديك، ثم استخدام ملاحظات الإصدار لـ 2.x.x أو 3.x.x أو 4.x.x أو 5.x.x لمطابقة معرّف الصورة مع الإصدار.

    إذا كنت تجلب الصورة من سجل داخلي خاص بك، فيمكنك تجاوز الصورة التي يستخدمها Toolkit عبر ضبط `OVERLEAF_IMAGE_NAME`. لا تحتاج إلى تحديد الوسم (tag)، إذ سيضيفه Toolkit تلقائيًا بناءً على ملف **config/version** لديك.
  </Step>

  <Step title="إعداد الوصول الخارجي">
    افتراضيًا، سيستمع Overleaf على `127.0.0.1:80`، مما لا يسمح إلا بحركة المرور القادمة من جهاز Docker المضيف.

    للسماح بالوصول الخارجي، اضبط `OVERLEAF_LISTEN_IP` و`OVERLEAF_PORT` في الملف [**config/overleaf.rc**](/ar/on-premises/configuration/overleaf-toolkit/environment-variables).
  </Step>

  <Step title="ترحيل متغيرات البيئة">
    من المرجح أن لديك مجموعة من متغيرات البيئة المعرّفة في خدمة `sharelatex` ضمن ملف `docker-compose.yml`، على سبيل المثال:

    ```yaml theme={null}
    environment:
        OVERLEAF_APP_NAME: Overleaf Community Edition
        OVERLEAF_PROXY_LEARN: 'true'
        …
    ```

    انسخ هذه المتغيرات إلى الملف [**config/variables.env**](/ar/on-premises/configuration/overleaf-toolkit/environment-variables) الخاص بـ Toolkit، مع الالتزام بالصيغة التالية (استخدم `=` بدلًا من `:`):

    ```env theme={null}
    OVERLEAF_APP_NAME=Overleaf Community Edition
    OVERLEAF_PROXY_LEARN=true
    ```

    الاستثناءات / الاختلافات عند استخدام Toolkit:

    * لم تعد المتغيرات التي تبدأ بـ `SANDBOXED_COMPILES_` و`DOCKER_RUNNER` مطلوبة. لتفعيل Sandboxed Compiles، اضبط `SIBLING_CONTAINERS_ENABLED=true` في ملف **config/overleaf.rc**.
    * لم تعد المتغيرات التي تبدأ بـ `OVERLEAF_MONGO_` و`OVERLEAF_REDIS_` والمتغير `REDIS_HOST` مطلوبة. يُعَد MongoDB وRedis الآن في الملف **config/overleaf.rc** باستخدام `MONGO_URL` و`REDIS_HOST` و`REDIS_PORT`.

    لخيارات الإعداد المتقدمة، راجع وثائق [config/overleaf.rc](/ar/on-premises/configuration/overleaf-toolkit/environment-variables).
  </Step>

  <Step title="وكيل NGINX">
    للاطلاع على تعليمات ترحيل `nginx`، راجع [وثائق وكيل TLS](/ar/on-premises/configuration/overleaf-toolkit/tls-proxy):
  </Step>

  <Step title="وحدات التخزين">
    عيّن مواقع وحدات تخزين البيانات في **config/overleaf.rc**:

    #### ShareLaTeX

    اضبط `OVERLEAF_DATA_PATH` على موقع وحدة تخزين البيانات التي تستخدمها الحاوية `sharelatex`.

    #### MongoDB

    اضبط `MONGO_DATA_PATH` على موقع وحدة تخزين البيانات التي تستخدمها الحاوية `mongo`.

    #### Redis

    اضبط `REDIS_DATA_PATH` على موقع وحدة تخزين البيانات التي تستخدمها الحاوية `redis`.
  </Step>
</Steps>

لمزيد من التفاصيل والإعدادات المتقدمة، راجع وثائق إعداد Toolkit ذات الصلة المرتبطة أعلاه.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.