У цьому документі описано налаштування S3 у Server CE та Ayakaleaf Pro. Про перенесення наявних даних до S3-сумісного сховища читайте в окремому посібнику.
Якщо ви розгортаєте Ayakaleaf Pro з увімкненим сховищем s3.md, чи шифруються дані, що зберігаються в S3?Ні. Дані не шифруються. Усі фрагменти історії, файли шаблонів, PDF та інші файли зберігаються у відкритому вигляді. Якщо ви використовуєте сторонній зовнішній S3-сервіс зберігання, приділіть особливу увагу безпеці та конфіденційності даних.
Коли варто розглянути використання S3 для зберігання даних
Для екземплярів із менш ніж 1000 місць ми рекомендуємо використовувати локальне дискове сховище з регулярними узгодженими резервними копіями.
Для більших екземплярів із понад 1000 місць, які досягають меж свого локального сховища (за обсягом або пропускною здатністю), ми рекомендуємо використовувати S3-сумісне об’єктне сховище замість інших мережевих рішень для зберігання, як-от NFS.
Варіанти S3-сумісного об’єктного сховища
Ось найпопулярніші варіанти S3-сумісного об’єктного сховища:
- AWS S3, керований сервіс; радимо обирати AWS S3, якщо Overleaf CE/Server Pro працює в AWS
- MINIO, власне розміщення
- Ceph, власне розміщення
- Інші хостинг-провайдери також пропонують певні керовані S3-сумісні об’єктні сховища; якщо ви вже запускаєте Overleaf CE/Server Pro в такого провайдера, можливо, варто використовувати їх замість власного.
Затримка під час вибору S3-сумісного об’єктного сховища
Затримка між екземпляром Server CE/Server Pro і вашим S3-сумісним об’єктним сховищем значною мірою впливає на час, потрібний для завершення міграції. Затримка також впливає на швидкість завантаження файлів у Server CE/Server Pro, а повільне отримання файлів може суттєво збільшити час компіляції PDF. Радимо мінімізувати географічну відстань між екземпляром Server CE/Server Pro і S3-сумісним об’єктним сховищем. У керованому середовищі це означає створення бакета в тому самому регіоні, а для локального рішення — розміщення обох систем в одному кампусі.
Налаштування S3
Нам потрібні чотири “бакети” та два облікові записи користувачів з обмеженими правами. overleaf-user-files і OVERLEAF_FILESTORE_USER_FILES_BUCKET_NAME потрібні лише для версій до v6.
Бакети не повинні бути загальнодоступними
| | | |
|---|
| Бакет | Призначення | Сервіс | Раніше в /var/lib/overleaf/data |
overleaf-user-files | файли користувачів проєкту | filestore | user_files |
overleaf-template-files | файли шаблонів | filestore | template_files |
overleaf-project-blobs | blob-об’єкти історії проєкту | history і filestore лише для читання | history/overleaf-project-blobs |
overleaf-chunks | фрагменти історії | history | history/overleaf-chunks |
Можливо, ви захочете або муситимете обрати інші назви — у такому разі використовуйте свої бакети в усіх командах.
Далі замість справжніх облікових даних використовуються заповнювачі:
| Змінна середовища | Опис |
|---|
OVERLEAF_FILESTORE_S3_ACCESS_KEY_ID | Ключ доступу/ім’я користувача з обмеженими правами для сервісу filestore. |
OVERLEAF_FILESTORE_S3_SECRET_ACCESS_KEY | Секретний ключ/пароль користувача з обмеженими правами для сервісу filestore. |
OVERLEAF_HISTORY_S3_ACCESS_KEY_ID | Ключ доступу/ім’я користувача з обмеженими правами для сервісу history. |
OVERLEAF_HISTORY_S3_SECRET_ACCESS_KEY | Секретний ключ/пароль користувача з обмеженими правами для сервісу history. |
Server CE і Server Pro потребують лише невеликого набору дозволів для кожного бакета:
- створення об’єкта
- отримання об’єкта
- видалення об’єкта
- перегляд вмісту бакета
Політики доступу
Ось як може виглядати політика для користувача filestore:
Ось як може виглядати політика для користувача history:
Огляд змінних
У разі використання AWS S3
У разі використання варіанта з власним розміщенням
Налаштування MINIO
MINIO_ROOT_USER і MINIO_ROOT_PASSWORD — це облікові дані root для екземпляра MINIO.
Щоб отримати mc, дотримуйтеся офіційної документації.
Останнє оновлення 5 жовтня 2026 р.