> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/on-premises/nl/onderhoud/docker-compose.yml-to-toolkit-migration.md).

# Migratie van docker-compose.yml naar Toolkit

Als je momenteel Docker Compose gebruikt via een `docker-compose.yml` bestand, kan migreren naar de Toolkit het draaien van een on-premises versie van Overleaf eenvoudiger maken om te implementeren, upgraden en onderhouden.

Om te migreren, moet je je bestaande Docker Compose-opzet omzetten naar het formaat dat door de Toolkit wordt gebruikt. Dit proces omvat het kopiëren van bestaande configuratie naar de Toolkit.

Deze gids begeleidt je stap voor stap door dit proces en zorgt voor een soepele migratie van Docker Compose naar de Toolkit.

{% hint style="info" %}
Deze instructies zijn voor v4.x en eerder. Daarom gebruiken alle variabelen de `SHARELATEX_` voorvoegsel in plaats van `OVERLEAF_`.
{% endhint %}

{% stepper %}
{% step %}

### Kloon de Toolkit-repository

Kloon eerst de Toolkit-repository naar de hostmachine:

```bash
git clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit
```

Voer vervolgens de `bin/init` opdracht uit om de Toolkit te initialiseren met de standaardconfiguratie.
{% endstep %}

{% step %}

### De image en versie instellen

In een typische `docker-compose.yml` worden de image en versie gedefinieerd in de componentbeschrijving, bijvoorbeeld:

```yaml
version: '2.2'
services:
    sharelatex:
        restart: always
        # Server Pro-gebruikers:
        # image: quay.io/sharelatex/sharelatex-pro
        image: sharelatex/sharelatex:3.5.13
```

Bij gebruik van de Toolkit wordt de imagenaam automatisch opgelost; de enige vereiste is om `SERVER_PRO=true` in **config/overleaf.rc** in te stellen om de Server Pro-image te kiezen of `SERVER_PRO=false` om Community Edition te gebruiken.

Het gewenste versienummer van Server Pro/Community Edition wordt ingesteld in het **config/version** bestand. De Toolkit vereist een specifiek versienummer zoals `4.2.3`. Als je `latest`gebruikt, kun je `bin/images` gebruiken om de image-id van je lokale `latest` versie te vinden, gebruik dan de release-opmerkingen voor 2.x.x, 3.x.x, 4.x.x of 5.x.x om de image-id aan de versie te koppelen.

Als je de image uit je eigen interne registry haalt, kun je de image die de Toolkit gebruikt overschrijven door `OVERLEAF_IMAGE_NAME`in te stellen. Je hoeft de tag niet op te geven, omdat de Toolkit deze automatisch toevoegt op basis van je **config/version** bestand in.
{% endstep %}

{% step %}

### Externe toegang configureren

Standaard luistert Overleaf op `127.0.0.1:80`, waardoor alleen verkeer van de Docker-hostmachine wordt toegestaan.

Om externe toegang toe te staan, stel je de `OVERLEAF_LISTEN_IP` en `OVERLEAF_PORT` in in het [**config/overleaf.rc**](/on-premises/nl/configuratie/overleaf-toolkit/environment-variables.md) bestand in.
{% endstep %}

{% step %}

### Migratie van omgevingsvariabelen

Je hebt waarschijnlijk een set omgevingsvariabelen gedefinieerd in de `sharelatex` service in je `docker-compose.yml`, bijvoorbeeld:

```yaml
environment:
    OVERLEAF_APP_NAME: Overleaf Community Edition
    OVERLEAF_PROXY_LEARN: 'true'
    …
```

Kopieer deze variabelen naar het [**config/variables.env**](broken://pages/a145fe34bdd0f59059ab93431fc01a7c5ed96e53) bestand van de Toolkit, en zorg ervoor dat de volgende vorm wordt gebruikt (gebruik `=` in plaats van `:`):

```env
OVERLEAF_APP_NAME=Overleaf Community Edition
OVERLEAF_PROXY_LEARN=true
```

Uitzonderingen / verschillen bij gebruik van de Toolkit:

* Variabelen die beginnen met `SANDBOXED_COMPILES_` en `DOCKER_RUNNER` zijn niet langer nodig. Om Sandboxed Compiles in te schakelen, stel `SIBLING_CONTAINERS_ENABLED=true` in uw **config/overleaf.rc** bestand in.
* Variabelen die beginnen met `OVERLEAF_MONGO_`, `OVERLEAF_REDIS_` als de `REDIS_HOST` variabelen zijn niet langer nodig. MongoDB en Redis worden nu geconfigureerd in het **config/overleaf.rc** bestand met behulp van `MONGO_URL`, `REDIS_HOST` en `REDIS_PORT`.

Raadpleeg voor geavanceerde configuratieopties de [config/overleaf.rc](/on-premises/nl/configuratie/overleaf-toolkit/environment-variables.md) documentatie.
{% endstep %}

{% step %}

### NGINX Proxy

Voor instructies over hoe je kunt migreren `nginx`, zie de [TLS Proxy-documentatie](/on-premises/nl/configuratie/overleaf-toolkit/tls-proxy.md):
{% endstep %}

{% step %}

### Volumes

Stel de locaties van datavolumes in **config/overleaf.rc**:

#### ShareLaTeX

Stel de `OVERLEAF_DATA_PATH` in op de locatie van het datavolume dat wordt gebruikt door de `sharelatex` container.

#### MongoDB

Stel de `MONGO_DATA_PATH` in op de locatie van het datavolume dat wordt gebruikt door de `mongo` container.

#### Redis

Stel de `REDIS_DATA_PATH` in op de locatie van het datavolume dat wordt gebruikt door de `redis` container.
{% endstep %}
{% endstepper %}

Raadpleeg voor meer details en geavanceerde configuratie de relevante Toolkit-configuratiedocumentatie die hierboven is gelinkt.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/on-premises/nl/onderhoud/docker-compose.yml-to-toolkit-migration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
