> 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/uk/pochatok-roboti/pro-infrastructure.md).

# Інфраструктура Pro

#### Служби

Інфраструктура Overleaf Pro складається з чотирьох основних служб: `sharelatex`, `git-bridge` (необов’язково), `mongo` та `redis`.  `sharelatex` служба, яка запускає основний додаток Server Pro, залежить від `mongo` та `redis` служб для своїх функцій бази даних і кешування/роботи в реальному часі та `git-bridge` для обробки [інтеграції з Git](/on-premises/uk/konfiguraciya/overleaf-toolkit/git-integration.md) (необов’язково). Єдиний порт, опублікований на хост-машині, — це порт 80, який `sharelatex` контейнера.

Server Pro також може додатково підтримувати [сховище, сумісне з S3](/on-premises/uk/konfiguraciya/overleaf-toolkit/s3.md) для файлів проєкту та повної історії проєкту, а також мати змогу проксувати доступ до основного [сайту документації Overleafarrow-up-right](https://www.overleaf.com/learn). Для отримання додаткової інформації дивіться наш посібник з [Додавання довідки для користувачів LaTeX](broken://pages/d8137ae1db33589bac1da803df802a8aea784afc) сторінок.

{% hint style="info" %}
За потреби MongoDB і Redis можна винести назовні, використовуючи змінні середовища, щоб вказати на зовнішні служби. Для отримання додаткової інформації дивіться [Налаштування Overleaf](broken://pages/2db6c85df4994d46e27a99e0d121414d97e0f879) якщо ви використовуєте Docker Compose, і [Налаштування Toolkit](broken://pages/ca70874423ed9501da9fd58e4d616cc02f4d9df0) якщо використовуєте Overleaf Toolkit.
{% endhint %}

#### Компіляція

Для [Ізольованих компіляцій](broken://pages/b9ca3bcc97e34b56334d9d294bf1334d5794a4bd),  `sharelatex` контейнер буде координувати створення нових контейнерів для обробки компіляцій проєктів; він робить це через сокет Docker на хост-машині. Ви можете прочитати більше про редактор і наскрізний процес компіляції/кешування [тут](/on-premises/uk/pochatok-roboti/microservices.md#editor-and-compile-process).

#### Мережа

Зв’язок між контейнерами забезпечується через внутрішнє DNS-розпізнавання Docker за допомогою виділеної мостової мережі, а брандмауери не ввімкнено. За замовчуванням наведені вище служби використовують свої відповідні стандартні порти, але їх можна налаштувати за допомогою змінних середовища.  `sharelatex` контейнер використовує порт 80 для зовнішнього веб-доступу (обслуговується Nginx),  `mongo` контейнер використовує порт 27017 і `redis` використовує порт 6379.

Для клієнтів, які використовують наше кероване рішення [Overleaf Toolkitarrow-up-right](https://github.com/overleaf/toolkit), ви [можете додатково увімкнути TLS-проксі](broken://pages/b08be0e08a6a2c8efb73cf49ba71dc2b036b89a7) для завершення HTTPS-з’єднань за допомогою Nginx через змінну середовища. Або ви можете використати наявний TLS-проксі.

{% hint style="info" %}
Ви можете переглянути діаграму, що пояснює потік запитів [тут](broken://pages/b08be0e08a6a2c8efb73cf49ba71dc2b036b89a7).
{% endhint %}

#### Підсумок

* Поза мережею Docker доступний лише порт 80, і він прив’язаний до Nginx. **Примітка:** Поле `sharelatex` контейнер запускає багато [службарrow-up-right](https://github.com/overleaf/overleaf/tree/main/services) які взаємодіють одна з одною через HTTP. Однак ці порти **не** доступні з-поза мережі Docker.
* Усередині мережі Docker служби Overleaf, MongoDB, Redis і Git Bridge можуть вільно взаємодіяти одна з одною.
* Усередині [Ізольованих компіляцій](broken://pages/b9ca3bcc97e34b56334d9d294bf1334d5794a4bd) контейнерів мережа недоступна.

Дивіться також пов’язані теми:

* [Мікросервіси](/on-premises/uk/pochatok-roboti/microservices.md)
* [Що таке Overleaf Toolkit?](/on-premises/uk/pochatok-roboti/what-is-the-overleaf-toolkit.md)


---

# 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/uk/pochatok-roboti/pro-infrastructure.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.
