> ## 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` найти ID образа вашей локальной версии `latest`, а затем по примечаниям к выпускам 2.x.x, 3.x.x, 4.x.x или 5.x.x сопоставить ID образа с версией.

    Если вы получаете образ из собственного внутреннего реестра, можно переопределить образ, используемый Toolkit, задав `OVERLEAF_IMAGE_NAME`. Указывать тег не нужно — Toolkit добавит его автоматически на основе файла **config/version**.
  </Step>

  <Step title="Настройка внешнего доступа">
    По умолчанию Overleaf прослушивает `127.0.0.1:80`, принимая трафик только с хост-машины Docker.

    Чтобы разрешить внешний доступ, задайте `OVERLEAF_LISTEN_IP` и `OVERLEAF_PORT` в файле [**config/overleaf.rc**](/ru/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'
        …
    ```

    Скопируйте эти переменные в файл Toolkit [**config/variables.env**](/ru/on-premises/configuration/overleaf-toolkit/environment-variables) в следующем формате (используйте `=` вместо `:`):

    ```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](/ru/on-premises/configuration/overleaf-toolkit/environment-variables).
  </Step>

  <Step title="Прокси NGINX">
    Инструкции по переносу `nginx` см. в [документации по TLS-прокси](/ru/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.