5.2 KiB
5.2 KiB
📄 OnlyOffice Document Server for Coolify
Этот репозиторий содержит инструменты для быстрой и безопасной настройки сервера и развертывания OnlyOffice Document Server (версия без ограничений подключений) под управлением Coolify.
⚡ Быстрый старт
Зайдите на новый сервер по SSH под root и выполните команду:
bash <(curl -sSL https://raw.githubusercontent.com/FluentBusiness/onlyoffice-coolify/refs/heads/master/setup.sh)
Проект состоит из двух частей:
- 🚀 Автоматический скрипт настройки сервера (
setup.sh) — готовит "голый" VPS к работе. - 📦 Конфигурация Docker Compose (
docker-compose.yaml) — для развертывания приложения внутри Coolify.
🛠️ Часть 1: Подготовка сервера (One-line Setup)
Скрипт setup.sh превращает чистый сервер (Ubuntu/Debian) в защищенную ноду для Coolify за одну команду.
Что делает скрипт:
- Безопасность: Настраивает UFW (Firewall), устанавливает Fail2Ban, отключает вход по паролю (SSH Hardening).
- Производительность: Создает Swap-файл на 4GB (критично для OnlyOffice, чтобы избежать OOM ошибок).
- Окружение: Устанавливает Docker, curl, jq, git, htop.
- Доступ: Генерирует новые SSH-ключи (Ed25519) и выводит Private Key для подключения в Coolify.
⚡ Быстрый старт
Зайдите на новый сервер по SSH под root и выполните команду:
bash <(curl -sSL https://raw.githubusercontent.com/FluentBusiness/onlyoffice-coolify/refs/heads/master/setup.sh)
- Подтвердите начало установки (
y). - Дождитесь завершения.
- ВАЖНО: В конце скрипт выведет
PRIVATE KEY. Скопируйте его и сохраните! Он понадобится для добавления сервера в Coolify.
🔗 Часть 2: Подключение к Coolify
- Откройте вашу панель Coolify.
- Перейдите в Servers -> Add Server.
- Заполните данные:
- IP Address: IP вашего сервера.
- User:
root. - Port:
22. - Private Key: Вставьте ключ, полученный на предыдущем шаге.
- Нажмите Connect.
📦 Часть 3: Развертывание OnlyOffice
Внутри Coolify создайте новый ресурс:
- Project -> Выберите проект -> New -> Docker Compose.
- Скопируйте содержимое файла
docker-compose.yamlиз этого репозитория или используйте код ниже:
services:
onlyoffice-documentserver:
image: thomisus/onlyoffice-documentserver-unlimited:9.1.0
restart: always
environment:
- JWT_ENABLED=true
- JWT_HEADER=AuthorizationJwt
volumes:
- ./onlyoffice/logs:/var/log/onlyoffice
- ./onlyoffice/data:/var/www/onlyoffice/Data
- ./onlyoffice/lib:/var/lib/onlyoffice
- ./onlyoffice/rabbitmq:/var/lib/rabbitmq
- ./onlyoffice/redis:/var/lib/redis
- ./onlyoffice/db:/var/lib/postgresql
Настройка в Coolify:
- Domains: Укажите ваш домен (например,
https://office.example.com). - Environment Variables: Добавьте переменную
JWT_SECRETс надежным паролем. Этот секрет понадобится для подключения Nextcloud/Moodle/Confluence к OnlyOffice. - Нажмите Deploy.
ℹ️ Технические детали
- Образ: Используется
thomisus/onlyoffice-documentserver-unlimited, который снимает ограничение на 20 одновременных подключений, присутствующее в официальной бесплатной версии. - Сеть: Контейнер подключается к внешней сети
coolify, что позволяет Traefik (прокси Coolify) автоматически перенаправлять трафик без проброса портов на хост. - Данные: Все данные хранятся в именованных Docker-томах (
named volumes) для удобства резервного копирования и миграции.
⚠️ Требования к серверу
- RAM: Минимум 4GB (или 2GB RAM + 4GB Swap, который создает скрипт).
- CPU: 2 ядра (рекомендовано).
- OS: Ubuntu 20.04/24.04 или Debian 11/12.