Команда инженеров · свой ЦОД в РФ · своё железо · своя панель · CloudStack + Linstor · MCP · база знаний по self-hosted
ПРОДУКТИВНОСТЬ И ПЛАНИРОВАНИЕ

Etherpad

Совместное редактирование документов на своем сервере: соавтор открывает ссылку и пишет, без регистрации и приглашения. Проверили Etherpad 3.3.6 на тарифе CPU2-RAM4-DISK50 - сколько он ест, за сколько поднимается, и где он не заменяет Google Docs, сколько бы ни хотелось.

Проверено на версии 3.3.6, 28 сентября 2026 ~9 минут чтения Fatmetal
Apache-2.0 Node.js 24 2 контейнера 157 МиБ в простое PostgreSQL 15 105 языков

Вердикт

Подходит
  • правке текста с людьми снаружи штата: подрядчик, эксперт, клиент входят по ссылке и не стоят денег
  • протоколам встреч и быстрым черновикам, где важно, кто что написал
  • школам и вузам: совместный конспект с видимым авторством каждой строки
  • тем, кому текст нельзя отдавать в чужое облако и в чужую модель
Не подходит
  • как замена офисного пакета: таблиц и презентаций тут нет
  • как база знаний: нет папок, дерева документов и поиска по ним
  • если нужны комментарии и права на документ из коробки - это плагины
  • если обновлять некогда: за 2026 год у продукта десять опубликованных уязвимостей
Мин. тариф: CPU2-RAM4-DISK50 Рекомендуем: CPU2-RAM4-DISK50 Сложность: easy Время запуска: 33 с до рабочего интерфейса Главный риск: ссылка на документ равна доступу к нему Прод-готовность: да, с обратным прокси и TLS
Что это

Что это и какую задачу решает

Etherpad - веб-редактор, в котором несколько человек правят один текст одновременно. Документ живет по своему адресу: открыл ссылку и печатаешь.

Ни регистрации, ни приглашения, ни установки. Правки появляются у остальных посимвольно, каждый автор подсвечен своим цветом, вся история сохраняется целиком.

Отсюда и задача, которую он решает лучше подписочных сервисов: работа над текстом с людьми, которых не нужно или нельзя заводить в своей системе. Подрядчик, внешний эксперт, участник обсуждения, студент.

Продукту семнадцать лет, он с 2009 года, и за это время не сменил ни модель, ни назначение. Среди пользователей апстрим называет Wikimedia, госучреждения ЕС и вузы в странах, где Google Workspace в образовании запрещен.

Стартовая страница Etherpad 3.3.6 на русском языке с формой создания документа
Стартовая страница Etherpad 3.3.6. Русский интерфейс включился сам, по языку браузера
Сравнение

Вместо чего его ставят

Подписка растет по числу людей, свой сервер стоит фиксированных денег. Цены сняты с официальных страниц 28 сентября 2026.

ПродуктМодельПорог входа
EtherpadApache-2.0, платных версий нет0 за софт, платится только сервер
Яндекс 360, "Минимальный"за сотрудника в месяц319 руб. - первый тариф с редактором документов
Яндекс 360, "Основной"за сотрудника в месяц549 руб.
Google Workspace Starterза пользователя в месяц3,80 евро, оплата из РФ недоступна

Машина под Etherpad стоит 500 рублей в месяц независимо от того, двое на ней пишут или двести. Точка безубыточности - примерно два сотрудника.

Но главный выигрыш не в арифметике. В подписке внешний соавтор либо занимает оплаченное место, либо не подключается вовсе. Здесь он просто открывает ссылку.

Ограничения

Чего в нем нет

Если вы пришли за заменой Google Docs, прочитайте этот раздел до установки, а не после.

Таблиц и презентаций нет. Etherpad правит текст, а не офисные файлы. Ни ячеек, ни формул, ни слайдов - и не планируется.

Папок и дерева документов нет. Документы живут плоским списком по именам, на стартовой странице показываются недавние. Поиска по содержимому тоже нет.

Комментариев из коробки нет. Они приезжают плагином ep_comments_page. Как и заголовки, выравнивание, markdown и цвет шрифта.

Пользователей и прав на документ нет. Аутентификация ставится плагинами: ep_openid_connect для входа через свой провайдер, ep_guest для гостя с ограниченным доступом.

!

Ссылка - это и есть доступ. Кто знает адрес документа, тот его читает и правит. Для быстрого черновика с подрядчиком это ровно то, что нужно. Для документа, который не для посторонних, включайте требование входа до того, как раздадите ссылку.

Архитектура

Тех-стек и что внутри

Node.js 24TypeScriptpnpm 12PostgreSQL 15Docker ComposeOpenID Connect

Два контейнера: само приложение и база. Доступ к базе идет через слой ueberdb2, поэтому вместо PostgreSQL можно подставить MySQL.

Встроенный движок dirtyDB в проде использовать нельзя - документация апстрима прямо называет его средством для разработки и тестов.

Ядро намеренно узкое, все остальное - плагины. В менеджере на версии 3.3.6 их 163, установлен по умолчанию один: само ядро. Сайт продукта при этом обещает 200 на одной странице и 290 на другой.

Синхронизацию правок делает библиотека Easysync на операциональных преобразованиях. Это та же семья алгоритмов, на которой работает Google Docs.

Установка

Развертывание на Fatmetal Cloud Server

Официальный способ - docker compose из репозитория. От чистой машины до рабочего интерфейса ушло около пяти минут, из них половина - установка Docker и скачивание образов.

  1. Поставить Docker

    Образ Ubuntu 24.04 приходит без Docker, ставим из официального репозитория. На тестовой машине это заняло 162 секунды.

  2. Взять compose с тега релиза, а не с ветки

    cd /opt
    git clone --depth 1 --branch v3.3.6 https://github.com/ether/etherpad.git etherpad
    cd etherpad

    В самом compose образ прописан как latest. Закрепите версию, иначе следующий pull принесет не то, что вы проверяли.

  3. Заполнить .env своими значениями

    DOCKER_COMPOSE_APP_ADMIN_PASSWORD=$(openssl rand -base64 24)
    DOCKER_COMPOSE_POSTGRES_PASSWORD=$(openssl rand -base64 24)
    DOCKER_COMPOSE_APP_PORT_PUBLISHED=127.0.0.1:9001
    DOCKER_COMPOSE_APP_TRUST_PROXY=false
    ADMIN_SECRET=$(openssl rand -base64 24)
    USER_SECRET=$(openssl rand -base64 24)

    Последние две строки апстрим не упоминает нигде - почему они обязательны, разобрано ниже в разделе про поломки.

  4. Запустить и выждать полминуты

    docker compose up -d
    curl -s -o /dev/null -w "%{http_code}\n" http://127.0.0.1:9001/

    На первом старте приложение один раз упадет и поднимется само. Рабочий интерфейс появился через 33 секунды.

Наружу продукт выставляем обратным прокси с сертификатом, а не голым портом. В примере порт слушает только петлю, а база не публикуется вовсе. За прокси не забудьте переключить TRUST_PROXY в true, иначе сломается определение HTTPS и учет адресов в защите от перебора.

Замеры

Что измерили

СтендCPU2-RAM4-DISK50, Ubuntu 24.04.4, Docker 29.8.1
Версия и образEtherpad 3.3.6, etherpad/etherpad:3.3.6
Скачивание образов88 с, 871 МБ приложение и 417 МБ база
Первый старт до рабочего UI33 с (с одним падением, см. ниже)
Повторный старт20 с
Вся установка с чистой машиныоколо 300 с
Память в простое157 МиБ приложение + 28 МиБ база
Память в пике за сессию374 МиБ приложение + 80 МиБ база
Отдача главной страницы5 мс
Открытие документа8 мс
Диск после установки3,6 ГБ из 48
i

Почему память названа двумя числами. В покое приложение держит 157 МиБ - три замера подряд разошлись на 0,2 МиБ. Пик взят из cgroup, это настоящая верхняя точка за все время жизни контейнера, а не выборка. Разница между 157 и 374 - не разброс измерения, а цена работы: под обращениями приложение поднимается и память сразу не отдает.

Весь стек в пике - 454 МиБ при четырех гигабайтах тарифа. Запас восьмикратный: тариф CPU2-RAM4-DISK50 подтвержден с большим отрывом, и ничего ниже него в сетке все равно нет.

Проверено на версии 3.3.6, сентябрь 2026. На новых версиях результаты могут отличаться.

Как это выглядит

Правка вдвоем и история каждой строки

Мы открыли один документ из двух независимых браузеров и печатали одновременно. Текст появляется у соседа сразу, а цвет фона показывает, чья это строка.

Документ Etherpad с правками двух авторов: синие строки одного, оранжевые другого
Один документ, два автора. Синие строки написал первый, оранжевые - второй

Авторство - не украшение, а главная функция. Каждое нажатие клавиши приписано автору, каждая ревизия сохранена, и режим истории прокручивает документ от пустого до текущего состояния.

Это заметно отличается от привычных редакторов, где история спрятана в меню и показывает крупные правки. Здесь видно, кто именно внес формулировку и когда.

Режим истории Etherpad: слайдер по версиям документа и цвета авторства
Режим истории: слайдер по всем девяти версиям документа с сохранением цветов авторов
i

Цвет автора назначается случайно. В нашем первом опыте оба соавтора получили похожие оттенки розового, и понять по экрану, что авторов двое, было нельзя. Цвет меняется в своих настройках за пару секунд - на общем документе это стоит сделать сразу.

Экспорт

Что уезжает из документа

Проверили все форматы на живом документе. Без установки LibreOffice работают пять: обычный текст, HTML, внутренний формат Etherpad, Microsoft Word и PDF.

Последние два - приятный сюрприз. Текст в самом диалоге импорта уверяет, что PDF требует LibreOffice, а на деле PDF собирается встроенными средствами и открывается как обычный файл.

Диалог импорта и экспорта Etherpad со списком доступных форматов
Список в интерфейсе честен: предлагается ровно то, что работает без LibreOffice

А вот если дернуть адрес экспорта в ODT или DOC напрямую, сервер ответит кодом 200 и отдаст 131 байт текста вместо файла. Браузер сохранит это под именем документа с расширением ODT, и человек получит нерабочий файл без единой ошибки на экране.

Формата RTF нет вовсе: адрес отдает 404, хотя диалог импорта его упоминает.

Подводные камни

Где может сломаться

Все четыре пункта собраны на живой установке, а не вычитаны из документации.

[ERROR] server - Error: connect ECONNREFUSED 172.18.0.2:5432

Причина. В compose апстрима стоит зависимость от базы без условия готовности. На чистом томе PostgreSQL выполняет первичную инициализацию, и приложение спрашивает его раньше времени. По меткам в журнале - ровно за две секунды до готовности базы.

Решение. Ничего не делать. Перезапуск прописан в compose, вторая попытка проходит, до рабочего интерфейса 33 секунды. Падение случается один раз и только на первом старте: при существующих томах гонки нет вовсе. Главное - не проверять здоровье сервиса сразу после запуска.

[ERROR] settings - SSO client(s) using a default/placeholder client_secret: admin_client, user_client

Причина. У встроенного провайдера OpenID Connect два клиента, и секреты у них по умолчанию - слова "admin" и "user". Способ входа по умолчанию как раз этот провайдер. Продукт пишет об этом в журнал при каждом старте, но ни compose, ни образцовый файл переменных апстрима о нужных переменных не упоминают вовсе.

Решение. Задать ADMIN_SECRET и USER_SECRET своими значениями, как в примере выше. После перезапуска строка из журнала пропадает.

!

Образцовый файл переменных сбивает с толку дважды. В нем лежит рабочий пароль базы по умолчанию, который уедет в прод у любого, кто скопировал файл не глядя. И там же задана переменная с текстом документа по умолчанию, имя которой не совпадает с тем, что читает боевой compose.

!

Настройки из веб-интерфейса переживут не всякий перезапуск. Если правите настройки через админку, смонтируйте файл конфигурации томом. Без этого docker compose down с последующим подъемом вернет шаблон из образа.

Безопасность

Безопасность и обновления

Тут нужен прямой разговор. За 2026 год у Etherpad опубликовано десять уязвимостей, из них три критических с оценками 9,6 и 9,9 по десятибалльной шкале.

Версия 3.3.3 закрыла неаутентифицированное чтение произвольных файлов с сервера, 3.3.4 - внедрение скрипта через импорт документа, 3.3.6 - обход входа для учетной записи без пароля.

Читать это можно двояко: либо код исторически проблемный, либо проект впервые получил внимание исследователей и все опубликовал. В пользу второго - что находки приходят от разных независимых людей, фиксируются публично и закрываются за недели.

Практический вывод один: ставить можно, забывать нельзя. Опасна не серия, а версия, оставленная на полгода. Три релиза за сентябрь 2026 показывают, что чинят быстро.

Мы проверили замок админки семью паролями, включая те самые значения, которыми открывался вход в закрытой уязвимости. На 3.3.6 с заданным паролем все семь получили отказ.

i

Админка умеет ставить плагины, то есть выполнять код на сервере. Поэтому пароль администратора обязателен не формально: без него compose апстрима просто не стартует, и это правильное поведение.

Менеджер плагинов Etherpad: 163 доступных плагина и один установленный
Менеджер плагинов: 163 доступных, установлено одно ядро. Меню переведено, тексты внутри - нет

Отдельно про приватность: своих обращений наружу у продукта ровно два, оба на сайт проекта - проверка обновлений и каталог плагинов. Оба отключаются переменными окружения, эта возможность добавлена в 3.3.2 ради закрытых контуров. Телеметрии нет.

Границы

Когда это НЕ ваш выбор

Нужен офисный пакет целиком

Таблицы, презентации, работа с файлами DOCX как с файлами - это не сюда. Смотрите на связку Nextcloud с OnlyOffice или Collabora, она тяжелее на порядок, но умеет все.

Нужна корпоративная база знаний

Дерево документов, права по разделам, поиск, онбординг - задача другого класса. У нас разобраны BookStack, Outline и Docmost.

Нужно сквозное шифрование

Текст хранится на сервере в открытом виде. Если критично, чтобы даже администратор не мог прочитать документ, смотрите CryptPad с шифрованием на стороне клиента.

Некому следить за обновлениями

Продукт держит небольшая команда добровольцев, и она прямо ищет новых мейнтейнеров. Релизы выходят часто, в том числе с исправлениями безопасности. Установка без обслуживания - плохая идея.

FAQ

Частые вопросы

Хватит ли одного гигабайта памяти?

По нашим цифрам да: весь стек в пике занял 454 МиБ, в простое - 185 МиБ. На гигабайте живьем мы не проверяли, тариф стенда был на четыре.

Нужна ли отдельная база данных?

Да. Встроенный движок годится только для разработки, это требование документации. В compose апстрима PostgreSQL уже прописан вторым контейнером.

Русский интерфейс надо включать?

Нет, он подхватывается по языку браузера. Перевод неполный: меню и подписи на русском, а часть новых экранов версии 3.3 осталась на английском.

Можно ли закрыть документы от посторонних?

Да, но это настройка, а не поведение по умолчанию. Из коробки любой обладатель ссылки читает и правит документ.

Что бэкапить?

Базу PostgreSQL и том с данными приложения. Весь текст документов и вся история правок лежат в базе.

Как обновляться?

Сменить тег образа, выполнить получение и перезапуск. Инструкция апстрима по обновлению написана под установку из исходников и про этот путь молчит.

Есть ли встроенный искусственный интеллект?

Нет, и это позиция проекта: ИИ здесь плагин, который ставите вы, к модели, которую выбираете вы. Можно не ставить никогда.

Почта нужна?

Нет. Почтовых сценариев у продукта нет вовсе - ни регистрации, ни восстановления пароля. Единственная функция с письмами это уведомления администратору, и она выключена.

Итог

Etherpad делает одну вещь и делает ее семнадцать лет: дает нескольким людям править один текст и показывает, кто что написал. За 500 рублей в месяц вы получаете это для любого числа участников, включая тех, кого незачем заводить в своей системе. Заменой Google Docs он при этом не является и не притворяется: таблиц, презентаций и папок тут нет. Если ваша задача звучит как "быстро написать вместе с людьми снаружи команды" - это лучший инструмент за эти деньги. Если как "перенести офис на свой сервер" - смотрите другое.

Анонсы новых разборов в Telegram-канале Новые гайды и карточки в маркетплейсе первыми @fatmetal_channel →

Этот стек у нас запущен на тарифе CPU2-RAM4-DISK50. Нашли баг в гайде - напишите, поправим в течение дня.

Спросить инженера в TelegramМы на связи