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

# Migracja z docker-compose.yml do Toolkit

Jeśli obecnie używasz Docker Compose za pomocą `docker-compose.yml` pliku, migracja do Toolkit może sprawić, że uruchamianie lokalnej wersji Overleaf będzie łatwiejsze do wdrożenia, aktualizacji i utrzymania.

Aby przeprowadzić migrację, musisz przekształcić istniejącą konfigurację Docker Compose do formatu używanego przez Toolkit. Proces ten polega na skopiowaniu istniejącej konfiguracji do Toolkit.

Ten przewodnik przeprowadzi Cię przez każdy krok tego procesu, zapewniając płynne przejście z Docker Compose do Toolkit.

{% hint style="info" %}
Te instrukcje dotyczą v4.x i wcześniejszych. Dlatego wszystkie zmienne używają `SHARELATEX_` prefiksu zamiast `OVERLEAF_`.
{% endhint %}

{% stepper %}
{% step %}

### Sklonuj repozytorium Toolkit

Najpierw sklonuj repozytorium Toolkit na maszynę hosta:

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

Następnie uruchom `bin/init` polecenie, aby zainicjalizować Toolkit z domyślną konfiguracją.
{% endstep %}

{% step %}

### Ustawianie obrazu i wersji

W typowym `docker-compose.yml` obraz i wersja są zdefiniowane w opisie komponentu, na przykład:

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

Podczas korzystania z Toolkit nazwa obrazu jest rozwiązywana automatycznie; jedynym wymaganiem jest ustawienie `SERVER_PRO=true` w **config/overleaf.rc** aby wybrać obraz Server Pro lub `SERVER_PRO=false` aby używać Community Edition.

Żądany numer wersji Server Pro/Community Edition jest ustawiany w **config/version** pliku. Toolkit wymaga konkretnego numeru wersji, takiego jak `4.2.3`. Jeśli używasz `latest`, możesz użyć `bin/images` aby znaleźć identyfikator obrazu swojej lokalnej `latest` wersji, a następnie użyj informacji o wydaniu dla 2.x.x, 3.x.x, 4.x.x lub 5.x.x, aby dopasować identyfikator obrazu do wersji.

Jeśli pobierasz obraz z własnego wewnętrznego rejestru, możesz zastąpić obraz używany przez Toolkit, ustawiając `OVERLEAF_IMAGE_NAME`. Nie musisz podawać tagu, ponieważ Toolkit automatycznie doda go na podstawie twojego **config/version** pliku.
{% endstep %}

{% step %}

### Konfigurowanie dostępu zewnętrznego

Domyślnie Overleaf będzie nasłuchiwać na `127.0.0.1:80`, zezwalając tylko na ruch z maszyny hosta Dockera.

Aby zezwolić na dostęp zewnętrzny, ustaw `OVERLEAF_LISTEN_IP` i `OVERLEAF_PORT` w [**config/overleaf.rc**](/on-premises/pl/konfiguracja/overleaf-toolkit/environment-variables.md) pliku.
{% endstep %}

{% step %}

### Migracja zmiennych środowiskowych

Prawdopodobnie masz zestaw zmiennych środowiskowych zdefiniowanych w `sharelatex` usłudze w twoim `docker-compose.yml`, na przykład:

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

Skopiuj te zmienne do Toolkit [**config/variables.env**](broken://pages/a6e930c58129d3a3462c8f1baa6f4d7d4317672c) pliku, zachowując następującą formę (użyj `=` zamiast `:`):

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

Wyjątki / różnice podczas korzystania z Toolkit:

* Zmienne zaczynające się od `SANDBOXED_COMPILES_` i `DOCKER_RUNNER` nie są już potrzebne. Aby włączyć Sandboxed Compiles, ustaw `SIBLING_CONTAINERS_ENABLED=true` w swoim **config/overleaf.rc** pliku.
* Zmienne zaczynające się od `OVERLEAF_MONGO_`, `OVERLEAF_REDIS_` jak i `REDIS_HOST` zmienna nie jest już potrzebna. MongoDB i Redis są teraz konfigurowane w **config/overleaf.rc** pliku przy użyciu `MONGO_URL`, `REDIS_HOST` i `REDIS_PORT`.

W przypadku zaawansowanych opcji konfiguracji odwołaj się do [config/overleaf.rc](/on-premises/pl/konfiguracja/overleaf-toolkit/environment-variables.md) dokumentacji.
{% endstep %}

{% step %}

### Proxy NGINX

Instrukcje dotyczące migracji `nginx`, zobacz [dokumentację TLS Proxy](/on-premises/pl/konfiguracja/overleaf-toolkit/tls-proxy.md):
{% endstep %}

{% step %}

### Wolumeny

Ustaw lokalizacje wolumenów danych w **config/overleaf.rc**:

#### ShareLaTeX

Ustaw `OVERLEAF_DATA_PATH` na lokalizację wolumenu danych używanego przez `sharelatex` kontenerze.

#### MongoDB

Ustaw `MONGO_DATA_PATH` na lokalizację wolumenu danych używanego przez `mongo` kontenerze.

#### Redis

Ustaw `REDIS_DATA_PATH` na lokalizację wolumenu danych używanego przez `redis` kontenerze.
{% endstep %}
{% endstepper %}

Po więcej szczegółów i zaawansowaną konfigurację zajrzyj do odpowiednich dokumentów konfiguracyjnych Toolkit, do których linki znajdują się powyżej.


---

# 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/pl/utrzymanie/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.
