> 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/de/wartung/docker-compose.yml-to-toolkit-migration.md).

# Migration von docker-compose.yml zum Toolkit

Wenn Sie Docker Compose derzeit über eine `docker-compose.yml` Datei verwenden, kann die Migration zum Toolkit das Bereitstellen, Aktualisieren und Warten einer lokal installierten Version von Overleaf erleichtern.

Um zu migrieren, müssen Sie Ihre vorhandene Docker-Compose-Konfiguration in das vom Toolkit verwendete Format umwandeln. Dieser Prozess umfasst das Kopieren der vorhandenen Konfiguration in das Toolkit.

Diese Anleitung führt Sie durch jeden Schritt dieses Prozesses und sorgt für eine reibungslose Migration von Docker Compose zum Toolkit.

{% hint style="info" %}
Diese Anweisungen gelten für v4.x und früher. Daher verwenden alle Variablen das `SHARELATEX_` Präfix anstelle von `OVERLEAF_`.
{% endhint %}

{% stepper %}
{% step %}

### Klonen Sie das Toolkit-Repository

Klonen Sie zunächst das Toolkit-Repository auf die Host-Maschine:

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

Führen Sie anschließend den `bin/init` Befehl aus, um das Toolkit mit seiner Standardkonfiguration zu initialisieren.
{% endstep %}

{% step %}

### Image und Version festlegen

In einer typischen `docker-compose.yml` werden das Image und die Version in der Komponentenbeschreibung definiert, zum Beispiel:

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

Wenn Sie das Toolkit verwenden, wird der Image-Name automatisch aufgelöst; die einzige Voraussetzung ist, `SERVER_PRO=true` in **config/overleaf.rc** um das Server-Pro-Image auszuwählen oder `SERVER_PRO=false` um die Community Edition zu verwenden.

Die gewünschte Versionsnummer der Server-Pro-/Community-Edition wird in der **config/version** Datei festgelegt. Das Toolkit erfordert eine bestimmte Versionsnummer wie `4.2.3`. Wenn Sie `latest`, können Sie `bin/images` verwenden, um die Image-ID Ihrer lokalen `latest` Version zu finden. Verwenden Sie dann die Release Notes für 2.x.x, 3.x.x, 4.x.x oder 5.x.x, um die Image-ID der Version zuzuordnen.

Wenn Sie das Image aus Ihrer eigenen internen Registry beziehen, können Sie das vom Toolkit verwendete Image überschreiben, indem Sie `OVERLEAF_IMAGE_NAME`. Sie müssen den Tag nicht angeben, da das Toolkit ihn automatisch basierend auf Ihrem **config/version** in der Datei.
{% endstep %}

{% step %}

### Externen Zugriff konfigurieren

Standardmäßig lauscht Overleaf auf `127.0.0.1:80`, und lässt nur Verkehr von der Docker-Host-Maschine zu.

Um externen Zugriff zu erlauben, setzen Sie die `OVERLEAF_LISTEN_IP` und `OVERLEAF_PORT` in der [**config/overleaf.rc**](/on-premises/de/konfiguration/overleaf-toolkit/environment-variables.md) in der Datei.
{% endstep %}

{% step %}

### Migration von Umgebungsvariablen

Sie haben wahrscheinlich eine Reihe von Umgebungsvariablen definiert im `sharelatex` Dienst in Ihrer `docker-compose.yml`, zum Beispiel:

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

Kopieren Sie diese Variablen in die Toolkit- [**config/variables.env**](broken://pages/ebbf882ed8511eb77f188b7576fc226015cf9c95) Datei und stellen Sie sicher, dass sie die folgende Form haben (verwenden Sie `=` anstatt `:`):

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

Ausnahmen / Unterschiede bei der Verwendung des Toolkits:

* Variablen, die mit `SANDBOXED_COMPILES_` und `DOCKER_RUNNER` beginnen, werden nicht mehr benötigt. Um Sandboxed Compiles zu aktivieren, setzen Sie `SIBLING_CONTAINERS_ENABLED=true` in Ihrer **config/overleaf.rc** in der Datei.
* Variablen, die mit `OVERLEAF_MONGO_`, `OVERLEAF_REDIS_` als auch die `REDIS_HOST` Variablen sind nicht mehr erforderlich. MongoDB und Redis werden jetzt in der **config/overleaf.rc** Datei mit `MONGO_URL`, `REDIS_HOST` und `REDIS_PORT`.

Für erweiterte Konfigurationsoptionen lesen Sie die oben verlinkte [config/overleaf.rc](/on-premises/de/konfiguration/overleaf-toolkit/environment-variables.md) Dokumentation.
{% endstep %}

{% step %}

### NGINX-Proxy

Anweisungen zur Migration `nginx`, siehe die [TLS-Proxy-Dokumentation](/on-premises/de/konfiguration/overleaf-toolkit/tls-proxy.md):
{% endstep %}

{% step %}

### Volumes

Legen Sie die Speicherorte der Daten-Volumes in **config/overleaf.rc**:

#### ShareLaTeX

Setzen Sie `OVERLEAF_DATA_PATH` auf den Speicherort des vom `sharelatex` -Container.

#### MongoDB

Setzen Sie `MONGO_DATA_PATH` auf den Speicherort des vom `mongo` -Container.

#### Redis

Setzen Sie `REDIS_DATA_PATH` auf den Speicherort des vom `redis` -Container.
{% endstep %}
{% endstepper %}

Weitere Details und erweiterte Konfiguration finden Sie in den oben verlinkten relevanten Toolkit-Konfigurationsdokumenten.


---

# 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/de/wartung/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.
