Команда инженеров · свой ЦОД в РФ · своё железо · своя панель · CloudStack + Linstor · MCP · база знаний по self-hosted
Продуктивность и планирование

AFFiNE

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

Проверено на версии 0.27.4, 5 октября 2026~9 минут чтенияFatmetal Team
Документы и доскаЛицензия сервера: условия требуют проверкиДокумент сохранен на стенде

Вердикт

Подходит
  • Небольшой команде, которой нужны текстовые заметки и свободное пространство для схем рядом с ними.
  • Тем, кто хочет хранить рабочие документы на своем сервере и готов обслуживать базу и резервные копии.
Не подходит
  • Тем, кому нужна проверенная полная замена всех сценариев Notion и Miro, включая привычные интеграции и шаблоны.
  • Команде, которой нужно больше десяти мест без уточнения условий тарифа, или предсказуемые права на коммерческое использование серверного кода.
Проверенный тариф: CPU4-RAM8-DISK100Установка: 301 сПростой: ~214 МиБ анонимной памяти контейнеровГлавный риск: условия лицензии backend
Задача

Можно ли заменить два инструмента одним?

Обычно текст проекта живет в Notion, а схема процесса или обсуждение идеи - в Miro. Между ними появляются ссылки, экспорты и отдельные права доступа. AFFiNE предлагает документ и бесконечную доску Edgeless внутри одного рабочего пространства.

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

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

ДокументыEdgelessPostgreSQLRedisDocker Compose
Сравнение

Где AFFiNE похож на Notion и Miro

Сравниваем конкретную задачу, а не число пунктов в меню.

ЗадачаAFFiNE на своем сервереОтдельные сервисы
Текст и схемыДокумент и Edgeless в одном пространстве; оба режима проверены на стенде.Обычно документы и доски живут в разных продуктах.
ХранениеПроверенный документ сохраняется в серверном экземпляре; за копии отвечает администратор.Хранение, доступность и копии зависят от правил поставщиков SaaS.
Переезд командыПонадобится проверить импорт и привычные сценарии на собственных данных.Готовые рабочие процессы сохраняются без миграции.
ПользователиВ базовом self-hosted режиме указан лимит 10 мест.У каждого сервиса собственные тарифы и ограничения.

Здесь выигрыш - единое пространство для небольшого проекта и контроль над его сервером. Экономию по сравнению с двумя подписками мы не обещаем: к цене VPS добавляются администрирование, копии и, возможно, платный план AFFiNE.

Интерфейс

Что получилось сделать в браузере

После входа AFFiNE показал рабочее пространство и список документов. Создание документа прошло через кнопку New doc. Мы ввели заголовок и текст, дождались синхронизации, затем открыли страницу заново в отдельном браузерном профиле.

Список документов в AFFiNE после включения серверной синхронизации
Рабочее пространство AFFiNE на стенде с включенной синхронизацией.
Документ AFFiNE с заголовком и текстом, созданный на стенде
Проверенный документ в серверном рабочем пространстве.

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

Edgeless-доска AFFiNE с фигурами и соединительной линией
Edgeless: фигуры и связь на доске, созданные через браузер.
Устройство

Что работает на сервере

Проверенный стек состоит из AFFiNE 0.27.4, PostgreSQL с pgvector и Redis. Отдельная задача миграции подготавливает схему базы. Все компоненты запускаются через Docker Compose, а Caddy выдает HTTPS на публичном адресе.

Приложение слушает порт 3010 только на локальном интерфейсе VM. Снаружи открывается адрес через Caddy; поэтому пользователь видит обычную HTTPS-страницу без номера внутреннего порта. Данные PostgreSQL, файлы AFFiNE и конфигурация лежат в отдельных каталогах.

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

Ресурсы

Какую машину брать

Стенд работал на CPU4-RAM8-DISK100 с Ubuntu 24.04.4 LTS. Четыре ядра соответствуют рекомендации AFFiNE; восьми гигабайт хватило для нашего опыта с двумя тестовыми документами. Проверки на машине меньшего размера не было.

Проверенная конфигурация4 vCPU, 8 ГБ RAM, 100 ГБ диска
Контейнеры в простое, anon~214 МиБ
Память контейнеров с кешем~333 МиБ
Три Docker-образа1,69 ГБ
Занято в корне после установки4,1 ГиБ
i

Малое потребление в простое не доказывает, что 2 ГБ хватит команде. Большие документы, вложения и одновременные пользователи здесь не нагружали стенд.

В маркетплейсе Fatmetal

AFFiNE на своем сервере

Карточка ведет к установке проверенного стека; требования к лицензии серверной части нужно учитывать отдельно.

Рекомендуемая конфигурация:
4 vCPU · 8 ГБ RAM · 100 ГБ NVMe от 990 ₽/мес

Открыть карточку AFFiNE →
Установка

Как прошел запуск на чистой VM

На свежую Ubuntu поставили Docker Engine, Compose и Caddy, затем загрузили зафиксированные образы AFFiNE, PostgreSQL и Redis. Скрипт создал каталоги данных, подготовил конфигурацию и запустил миграцию базы до старта приложения.

Весь путь от запуска скрипта до отметки ready занял 301 секунду. Сюда входят установка пакетов, скачивание образов и выпуск HTTPS-сертификата. Это не отдельный замер времени до первого публичного ответа: такой момент при чистой установке мы не записывали.

  1. Подготовить сервер

    Ubuntu 24.04, публичный адрес и домен, который указывает на VM.

  2. Запустить Compose

    Задать внешний HTTPS-адрес в конфигурации и сохранить постоянные каталоги PostgreSQL, файлов и настроек.

  3. Создать администратора

    Открыть публичный адрес, пройти начальную настройку и затем включить AFFiNE Sync для рабочего пространства.

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

Замеры

Что показал живой стенд

После установки мы измерили сервер без пользовательской нагрузки. PostgreSQL и Redis были healthy, приложение отвечало по HTTPS, а миграция завершилась с кодом 0. Цифры ниже относятся только к DEV-стенду в зоне stand-1.

Загрузка трех образов63 с
Compose до отметки ready96 с
Теплый старт приложения до HTTP 2007,206 с
Публичный HTTPS, медиана пяти запросов41 мс
Память контейнеров, anon без нагрузки~214 МиБ

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

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

Грабли

Где легко получить ложное ощущение, что все готово

!

Первое рабочее пространство может быть локальным. После создания администратора браузер показал Demo Workspace. Лишь после Sign in and enable и Enable AFFiNE Sync мы получили серверное пространство. Перед миграцией проверьте сохранение из другого профиля браузера.

!

Официальный compose доверяет подключениям к PostgreSQL. В стендовом рецепте мы заменили POSTGRES_HOST_AUTH_METHOD=trust случайным паролем и ограничили доступ приложения локальным портом. Просто копировать compose в публичную VM не стоит.

!

Русский интерфейс переведен не полностью. В настройках указано 87% перевода; после выбора русского отдельные надписи остались английскими. Для смешанной команды это мелочь, для строгой локализации продукта - существенное условие.

Встроенный AI BYOK (Beta) предлагает ключ внешнего провайдера. Мы нашли настройку, но не нашли в проверенном диалоге поле адреса совместимого API и не выполнили живой запрос к модели. Прокси к внешним API входит в VPS Fatmetal, однако его работа именно с AFFiNE не подтверждена; в проверенном рецепте он не включен.

Эксплуатация

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

Публичный доступ проходит через Caddy с TLS; порт приложения остается на 127.0.0.1. Пароль PostgreSQL создан отдельно и хранится в файле настроек с ограниченными правами. Эти меры были реализованы на стенде, но полноценный аудит безопасности мы не проводили.

Для восстановления нужны не только строки базы: документы и вложения лежат в каталоге хранения AFFiNE, а серверная конфигурация - отдельно. В нашем размещении это /opt/affine/data и /opt/affine/config. Регулярные копии и пробное восстановление администратор должен настроить сам.

При обновлении нельзя бездумно заменять тег образа: новый выпуск может менять схему базы и формат настроек. Читайте примечания к релизу, сделайте копию данных и конфигурации, затем выполните миграцию для выбранной версии. На стенде повторный запуск миграции для 0.27.4 прошел успешно; обновление на следующий релиз не проверяли.

Выбор

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

Нужно воспроизвести устоявшийся процесс в Notion или Miro

Мы проверили документ и простую доску, но не миграцию, сложные шаблоны, интеграции и совместную сессию. Команде с критичными процессами нужен пилот на своих данных.

Требуются ясные права на коммерческое использование серверной части

Редактор и сервер описаны разными лицензионными условиями. Лицензия backend в репозитории содержит ограничения для EE-кода, а границы Community Edition требуют отдельного подтверждения. Не считайте весь стек автоматически MIT.

Нужен полностью русский интерфейс или проверенный AI через внешний API

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

FAQ

Частые вопросы перед переездом

Можно ли работать без облака AFFiNE?

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

Заменит ли AFFiNE одновременно Notion и Miro?

Для простых документов и схем он объединяет два сценария. Полный перенос существующих процессов мы не проверяли.

Хватит ли 2 ГБ RAM?

Такого теста не было. Рекомендация этого разбора основана на живом стенде CPU4-RAM8-DISK100, а цифра ~214 МиБ относится только к простоящим контейнерам.

Сколько пользователей в базовой self-hosted версии?

В документации AFFiNE указан лимит 10 мест в рабочем пространстве без Team-плана. Саму многопользовательскую сессию мы не испытывали.

Есть ли ИИ без отдельного ключа?

В проверенном интерфейсе есть AI BYOK (Beta), то есть настройка собственного ключа провайдера. Вызов модели со стенда не выполняли.

Весь ли AFFiNE распространяется по MIT?

Нет оснований так утверждать. README и лицензия backend описывают разные части и ограничения; для коммерческого использования условия нужно уточнить.

Итог

AFFiNE уже дает рабочую связку документа и доски на своем сервере. На стенде 0.27.4 документ пережил перезапуск и открылся в чистом браузере; полный перенос команды зависит от ее сценариев, лимита мест и условий лицензии серверной части.

Рекомендуемая конфигурация для установки:
4 vCPU · 8 ГБ RAM · 100 ГБ NVMe

Не хотите устанавливать вручную?

Запустите AFFiNE на этой конфигурации автоматически - от 990 ₽/мес.

Запустить AFFiNE →
Анонсы новых разборов в Telegram-каналеНовые гайды и карточки в маркетплейсе первыми
Спросить инженера в TelegramМы на связи