Технологии

Docmost на VPS: независимая wiki для командной работы и защиты данных

Установите Docmost (open-source wiki) на свой VPS через Docker. Полный контроль данных, онлайн-редактор и бесплатная альтернатива Notion или Confluence.

Команда is*hosting 7 мая 2026 9 мин
Docmost на VPS: независимая wiki для командной работы и защиты данных
Содержание

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

Docmost – это self-hosted база знаний, которая решает обе проблемы. Это open-source проект, который запускается на вашем VPS через Docker Compose и включает в себя по-настоящему современный редактор для совместной работы в реальном времени. Ваши данные остаются на вашем сервере.

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

Что такое Docmost

Docmost – это open-source платформа для ведения документации и корпоративной базы знаний, которую можно развернуть на собственных серверах (self-hosted). Проект стартовал в 2023 году и с тех пор собрал более 18 000 звезд на GitHub. Ядро распространяется по лицензии AGPL-3.0. Это по-настоящему открытый исходный код без каких-либо скрытых условий.

Редактор поддерживает совместную работу в реальном времени: несколько человек могут редактировать одну страницу одновременно без блокировки документа и риска затереть чужой текст. Встроена поддержка диаграмм: Mermaid, Draw.io и Excalidraw. Также есть вложенные страницы, комментарии к тексту, история изменений и полнотекстовый поиск.

Весь контент разбит на Пространства (Spaces). У каждого Пространства свой список участников и настройки доступа. Их можно создавать под конкретную команду, проект или любую другую структуру.

Community или Business: за что придется платить

Бесплатная версия (Community) включает в себя все базовые функции для совместной работы, которых с головой хватит небольшой или средней команде для полноценной self-hosted wiki. Вот подробное сравнение:

Функция

Community (бесплатно)

Business / Enterprise

Страницы, редактор, блоки форматирования

ДА

ДА

Совместный редактор в реальном времени

ДА

ДА

Пространства (безлимитно)

ДА

ДА

Группы пользователей

ДА

ДА

Комментарии и их закрытие (resolve)

ДА

ДА

История страниц и восстановление

ДА

ДА

Диаграммы (Mermaid, Draw.io, Excalidraw)

ДА

ДА

Публичный доступ к страницам

ДА

ДА

Импорт (Markdown, HTML, Notion, DOCX)

ДА

ДА

Экспорт (Markdown, HTML)

ДА

ДА

Полнотекстовый поиск (по страницам)

ДА

ДА

Полнотекстовый поиск по вложениям (PDF, DOCX)

НЕТ

ДА

Детальные настройки доступа на уровне страниц

НЕТ

ДА

Единый вход (SSO: SAML 2.0 / OIDC / LDAP)

НЕТ

ДА

Многофакторная аутентификация (MFA)

НЕТ

ДА

ИИ-ответы и ИИ-помощник для текстов

НЕТ

ДА

REST API и API-ключи

НЕТ

ДА

Импорт из Confluence

НЕТ

ДА

Журнал аудита (Audit log)

НЕТ

Enterprise

SCIM (автоматическое управление пользователями)

НЕТ

Enterprise

Тариф Business стоит $3.50 за пользователя в месяц при годовой оплате (минимум 10 рабочих мест). Для команды из 20 человек это выйдет в $840 в год. Для сравнения, подписка на Notion Business для такой же команды обойдется примерно в $4,800 в год, а Confluence Cloud Standard – около $1,536 в год.

Если вашей компании не обязательно нужен SSO (единый вход), то версия Community покроет все остальные нужды абсолютно бесплатно.

Ограничения, о которых стоит знать

В бесплатной версии нет единого входа (SSO). Если ваша команда использует Okta, Entra ID или любую другую систему централизованной авторизации, вам потребуется тариф Business (обойти это ограничение никак не получится).

REST API доступен только на тарифах Business и Enterprise. В версии Community также нет документированных исходящих вебхуков. Технически автоматизацию можно настроить с помощью скриптов, которые напрямую отслеживают базу данных или файловое хранилище, но это неофициальный и довольно ненадежный способ, который может сломаться.

Кроме того, Docmost – это еще молодой проект. Он развивается очень быстро, но у него пока нет той огромной экосистемы плагинов и интеграций, которая годами выстраивалась вокруг Confluence. Впрочем, для большинства команд, которые впервые настраивают собственную (self-hosted) базу знаний, эта разница в повседневной работе будет совершенно незаметна.

Docmost и альтернативы: Notion, Confluence, Outline, Affine

Docmost и альтернативы: Notion, Confluence, Outline, Affine

Прежде чем окончательно выбрать self-hosted базу знаний, полезно понимать, для каких задач Docmost подходит идеально, а для каких – нет.

 

Docmost

Notion

Confluence

Outline

Affine

Свой сервер (Self-hosted)

ДА

НЕТ

Только DC

ДА

ДА

Лицензия

AGPL-3.0

Проприетарная

Проприетарная

BSL 1.1

MIT / проприетарный сервер

Совместная работа онлайн

ДА

ДА

ДА

ДА

ДА

Встроенные диаграммы

ДА

Ограниченно

Через плагины

НЕТ

ДА (интерактивная доска)

SSO (Единый вход)

Business+

Business+

DC

Community+

Business+

Вход по email

ДА (с паролем)

ДА (с паролем)

ДА (с паролем)

Только magic link*

ДА (с паролем)

Импорт из Confluence

Business+

НЕТ

N/A

НЕТ

НЕТ

Возраст проекта

~2 года

~10 лет

~20 лет

~5 лет

~3 года

*Outline поддерживает вход по email через magic link, но для создания первого аккаунта все равно требуется SSO/OIDC провайдер. Обычный вход по логину и паролю не поддерживается.

Docmost против Notion

Notion работает только в облаке – установить его на свой сервер нельзя. Да, в корпоративных тарифах можно выбрать регион хранения данных (например, в ЕС), но это совсем не то же самое, что держать данные на собственном сервере. Если вам важен полный контроль над информацией, Docmost – единственный вариант из этих двух.

Docmost против Confluence

Коробочная версия Confluence Data Center (DC) все еще продается, но компания Atlassian уже озвучила четкий план по ее закрытию. Текущие клиенты могут продлевать лицензии до марта 2028 года, а к марту 2029 года приложения перейдут в режим «только чтение».

Всех новых клиентов направляют в облачный Confluence Cloud, который быстро становится очень дорогим по мере роста команды.

Если вы ищете альтернативу Confluence, но без ценников Atlassian, Docmost закрывает главные потребности: структурированная документация с тонкими настройками прав доступа, свой сервер и никакой привязки к конкретному поставщику.

Docmost против Outline

Outline – это быстрый и отлично отполированный продукт. Но он распространяется по лицензии Business Source License (BSL 1.1), что делает его «продуктом с открытым исходным кодом» (source-available) лишь номинально, это не классический open-source.

Кроме того, Outline не поддерживает привычный вход по связке email + пароль. Пользователи авторизуются либо через SSO/OIDC, либо по «волшебной ссылке» на почту. Но нюанс в том, что для создания первого аккаунта вам все равно понадобится OIDC-провайдер. В Docmost обычная авторизация по паролю работает «из коробки», что сильно упрощает первоначальную настройку.

Docmost против Affine

Affine – это инструмент совершенно другой категории. Он объединяет документы, интерактивные доски и управление задачами в единое локальное рабочее пространство.

С лицензированием там тоже смешанная картина: большая часть кода идет под свободной лицензией MIT, но на некоторые серверные компоненты действуют другие, закрытые условия. Если ваша главная цель – командная база знаний с «пространствами» и доступом по ролям, то Affine решает совсем другую задачу. А вот Docmost создан специально для этого.

Что понадобится перед установкой

ОС: Ubuntu 22.04 LTS или 24.04 LTS

Требования к ПО:

  • Docker Engine версии 24.x или новее
  • Docker Compose v2 (именно в виде плагина, а не старый отдельный бинарный файл)
  • Nginx – если хотите использовать обратный прокси-сервер
  • Certbot – если планируете настроить защищенное соединение (HTTPS) через Let's Encrypt

Сеть: откройте порт 3000 в вашем фаерволе. Этого достаточно для прямого доступа. Доменное имя необязательно. Без него Docmost будет доступен по адресу http://ВАШ_IP:3000 – это отлично подходит для внутреннего использования или тестирования. Шаги 5 и 6 в инструкции покажут, как настроить Nginx и Certbot, если у вас все же есть домен и нужен HTTPS.

Доступ: права root или пользователя с правами sudo на сервере.

Выбор подходящего тарифа VPS

В состоянии покоя три контейнера Docmost потребляют около 500–600 МБ оперативной памяти (RAM) и примерно 2–3 ГБ на диске при чистой установке. Обе эти цифры будут постепенно расти по мере того, как ваша команда будет создавать страницы и загружать файлы.

Тариф Start отлично подойдет для небольшой команды или тестирования продукта одним пользователем. Ресурсов хватит, чтобы запустить три контейнера без лишней нагрузки на систему. Для команды, которая работает с документацией каждый день, оптимальной базой станет тариф Medium. Его 4 ГБ оперативной памяти дадут комфортный запас для работы Docmost, Nginx и, например, будущего сервера автоматизации n8n, так что вам не придется постоянно мониторить потребление памяти.

Перейти с тарифа Start на Medium в будущем несложно, но перенос данных все равно потребует времени. Если вы уже знаете, что система сразу пойдет в полноценную работу (продакшн), лучше стартовать с Medium.

Тариф

Процессор / Память / Диск

Кому подойдет лучше всего

Start – от $10.19/мес

2 vCPU / 2 ГБ RAM / 30 ГБ NVMe

Команды до 5 человек, минимум тяжелых файлов и вложений.

Medium – от $21.24/мес

3 vCPU / 4 ГБ RAM / 40 ГБ NVMe

Команды от 5 до 20 человек, комфортный запас ресурсов, безлимитный трафик.

Premium – от $31.99/мес

4 vCPU / 8 ГБ RAM / 50 ГБ NVMe

Команды от 20 человек, использование ИИ-функций (в версии Business), активная загрузка тяжелых файлов.

Как установить Docmost на VPS

Как установить Docmost на VPS

Три контейнера. Сам Docmost, PostgreSQL для базы данных и Redis для кэширования и поддержания активных сессий. Все это собирается воедино с помощью одного файла Docker Compose.

Шаг 1 – Установка Docker

# Добавляем официальный GPG-ключ и репозиторий Docker
sudo apt-get update -qqy
sudo apt-get install ca-certificates curl -qqy
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
  https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update -qqy

# Устанавливаем Docker Engine и плагин Compose
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -qqy

# Проверяем установку
docker --version
docker compose version

Ожидаемый результат:

step1_docker_install

Шаг 2 – Загрузка конфигурации Docker Compose

Создайте рабочую директорию и скачайте официальный файл compose из репозитория Docmost на GitHub:

mkdir docmost && cd docmost
curl -O https://raw.githubusercontent.com/docmost/docmost/main/docker-compose.yml

Файл docker-compose.yml задает три сервиса (docmost, db, redis) с именованными томами (volumes) и внутренней сетью.

Шаг 3 – Настройка переменных окружения

Откройте файл compose и отредактируйте переменные прямо в нем:

vi docker-compose.yml

Официальный шаблон docker-compose.yml выглядит так (уже с заполненными значениями):

services:
  docmost:
    image: docmost/docmost:latest
    depends_on:
      - db
      - redis
    environment:
      APP_URL: "https://wiki.yourdomain.com"
      APP_SECRET: "REPLACE_WITH_LONG_SECRET"   # минимум 32 символа
      DATABASE_URL: "postgresql://docmost:STRONG_DB_PASSWORD@db:5432/docmost"
      REDIS_URL: "redis://redis:6379"
    ports:
      - "3000:3000"
    restart: unless-stopped
    volumes:
      - docmost:/app/data/storage

  db:
    image: postgres:18
    environment:
      POSTGRES_DB: docmost
      POSTGRES_USER: docmost
      POSTGRES_PASSWORD: STRONG_DB_PASSWORD
    restart: unless-stopped
    volumes:
      - db_data:/var/lib/postgresql

  redis:
    image: redis:8
    command: ["redis-server", "--appendonly", "yes", "--maxmemory-policy", "noeviction"]
    restart: unless-stopped
    volumes:
      - redis_data:/data

volumes:
  docmost:
  db_data:
  redis_data:

Перед сохранением файла сгенерируйте APP_SECRET:

openssl rand -hex 32

 

Ожидаемый результат:

step3_openssl_secret

Скопируйте полученный результат в поле APP_SECRET. Если оставить значение по умолчанию, Docmost просто не запустится – это сделано ради безопасности.

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

# Вариант А: STARTTLS на порту 587 (для большинства провайдеров: Gmail, SendGrid и т.д.)
MAIL_DRIVER=smtp
SMTP_HOST=smtp.yourmailprovider.com
SMTP_PORT=587
SMTP_SECURE=false       # false = STARTTLS; соединение переключается на зашифрованное
[email protected]
SMTP_PASSWORD=your_smtp_password
[email protected]
MAIL_FROM_NAME=Docmost

# Вариант Б: SSL/TLS на порту 465
SMTP_PORT=465
SMTP_SECURE=true        # true = использование SSL с самого начала

Шаг 4 – Запуск контейнеров

cd ~/docmost
docker compose up -d

Docker скачает образы и запустит все три контейнера. Первый запуск займет 1-2 минуты. Проверьте статус:

docker compose ps

step4_compose_up

Все три контейнера должны быть запущены. Самая частая причина ошибок запуска – отсутствующий или не измененный APP_SECRET. Исправьте это и снова выполните docker compose up -d.

step4_compose_ps

Шаг 5 – Настройка Nginx в качестве обратного прокси

sudo apt install -y nginx
sudo nano /etc/nginx/sites-available/docmost
server {
    listen 80;
    server_name wiki.yourdomain.com;
    client_max_body_size 100M;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 90;
    }
}

Заголовки Upgrade и Connection обязательны для работы WebSocket-соединений Docmost. Без них совместное редактирование в реальном времени сломается.

sudo ln -s /etc/nginx/sites-available/docmost /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

Шаг 6 – Включение HTTPS с помощью Certbot

sudo apt install -y certbot python3-certbot-nginx

sudo certbot --nginx -d wiki.yourdomain.com \
  --non-interactive --agree-tos \
  -m [email protected] --redirect

Certbot автоматически изменит конфигурацию Nginx и настроит автопродление сертификата. Теперь откройте https://wiki.yourdomain.com – вы должны увидеть экран настройки рабочего пространства Docmost.

Docmost create workspace

Первые шаги после установки

Первые шаги после установки

Сначала настройте структуру, а потом уже наполняйте ее контентом.

Создайте Пространство (Space) для каждой команды или проекта – например, для Разработки, Продукта и HR. В каждом Пространстве будет свое собственное дерево страниц и свои настройки доступа, изолированные от остальных. Затем, прежде чем кого-либо приглашать, настройте Группы (Groups). Группа позволяет выдать доступ к Пространству сразу нескольким людям за одно действие, вместо того чтобы настраивать права для каждого пользователя по отдельности.

Как только Группы настроены, перейдите в Настройки (Settings), откройте раздел Участники (Members) и разошлите приглашения по email. Если письма не приходят, проверьте настройки почты с помощью команды:

docker compose logs docmost | grep mail

Docmost new page

Кликните на «General» и выберите новую страницу, чтобы создать новый документ.

Расширение возможностей Docmost: Встроенные интеграции

Плагины в Docmost уже встроены и их не нужно устанавливать отдельно. Прямо на страницах можно создавать схемы в Draw.io, Excalidraw и Mermaid, а через команду /embed можно вставлять виджеты из Loom, Airtable, Miro и других сервисов.

Что касается ИИ-функций, пользователи тарифа Business могут подключить OpenAI, Google Gemini или локальный сервер Ollama. Опция с Ollama позволяет обрабатывать все локально, оставляя данные исключительно на вашем сервере:

AI_DRIVER=ollama
OLLAMA_API_URL=http://ollama:11434
AI_EMBEDDING_MODEL=nomic-embed-text
AI_COMPLETION_MODEL=qwen2.5:7b

Подключение n8n для автоматизации

Кстати, вот тут готовый VPS с уже предустановленным n8n.

Как именно вы будете автоматизировать связку n8n + Docmost, зависит от вашего тарифа. У пользователей Business и Enterprise есть полноценный REST API с персональными API-ключами. В системе n8n для этого используется нода HTTP Request, куда в заголовок Authorization добавляется ваш ключ. Полную документацию можно найти на docmost.com/api-docs.

В версии Community нет документированных вебхуков или API. Технически автоматизация возможна, если напрямую отслеживать изменения в базе данных PostgreSQL или файловом хранилище, но это неофициальный метод, который наверняка сломается при следующем обновлении.

Запускаете n8n на том же VPS? Оба сервиса могут общаться друг с другом по внутренней сети Docker без каких-либо дополнительных настроек. Подробности читайте в руководстве по запуску n8n на VPS.

n8n VPS хостинг

n8n уже предустановлен, 40+ локаций и полный root-доступ для ваших self-hosted инструментов.

Смотреть тарифы

Стратегия резервного копирования

is*hosting предоставляет бесплатные еженедельные бэкапы на всех тарифах VPS.

Если вам нужны ежедневные бэкапы или больше места, можно подключить отдельный диск для резервных копий – доступные объемы и цены указаны на этой странице. Это решает вопрос бэкапов на уровне инфраструктуры.

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

Бэкап базы данных

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

docker compose ps      # показывает имена контейнеров
docker volume ls       # показывает имена томов

Используйте команду docker compose exec, чтобы запустить утилиту pg_dump внутри работающего сервиса базы данных, независимо от того, как конкретно называется сам контейнер:

#!/bin/bash
# Запускайте из папки docmost/ (там, где лежит файл docker-compose.yml)
BACKUP_DIR="/var/backups/docmost"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p "$BACKUP_DIR"

# Делаем дамп базы через имя сервиса – сработает при любом имени контейнера
docker compose exec -T db pg_dump \
  -U docmost -d docmost -F c \
  > "$​{BACKUP_DIR}/docmost_db_$​{DATE}.dump"

# Оставляем копии только за последние 7 дней
find "$BACKUP_DIR" -name "*.dump" -mtime +7 -delete

echo "Бэкап БД готов: $​{BACKUP_DIR}/docmost_db_$​{DATE}.dump"

Как восстановить базу:

# Сначала остановите приложение, чтобы избежать конфликтов при записи
docker compose stop docmost

docker compose exec -T db pg_restore \
  -U docmost -d docmost --clean \
  < /var/backups/docmost/docmost_db_YYYYMMDD_HHMMSS.dump

docker compose start docmost

Бэкап файлов (вложений)

Файлы вложений хранятся в Docker-томе Docmost. Сначала узнайте его реальный путь на сервере:

# Ищем точное имя тома (оно зависит от имени вашего проекта/папки)
docker volume ls | grep docmost
docker volume inspect <имя-тома> | grep Mountpoint
BACKUP_DIR="/var/backups/docmost"
DATE=$(date +%Y%m%d_%H%M%S)
VOLUME_PATH=$(docker volume inspect $(docker volume ls -q | grep docmost | grep -v db | grep -v redis) \
  --format '')

tar -czf "$​{BACKUP_DIR}/docmost_files_$​{DATE}.tar.gz" "$VOLUME_PATH"
find "$BACKUP_DIR" -name "*.tar.gz" -mtime +7 -delete

Если нужно отправлять бэкапы Docmost на удаленный сервер (off-site), удобнее всего использовать rclone – он умеет синхронизировать данные с любым S3-совместимым хранилищем (AWS S3, Cloudflare R2, Backblaze B2). Просто добавьте его вторым шагом в тот же cron-скрипт, чтобы автоматически получать и локальные, и удаленные копии.

Итоги

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

Бесплатной версии Community хватит для команд до ~10 человек. Когда появится потребность в едином входе (SSO) или поиске по содержимому файлов, тариф Business за $840 в год на 20 человек все равно обойдется в разы дешевле подписок на Confluence или Notion. А для крупных корпоративных внедрений Docmost поддерживает горизонтальное масштабирование через Redis pub/sub – архитектура платформы не привязывает вас к одному единственному серверу.

Что касается хостинга, тариф VPS Medium – это правильный выбор по умолчанию для большинства команд. Он дает достаточно запаса ресурсов, чтобы комфортно крутить на одной машине Docmost, Nginx и, в перспективе, систему автоматизации n8n, не переживая о нехватке оперативной памяти.

Если вы присматриваетесь и к другим self-hosted инструментам, в нашем блоге есть отличные руководства по запуску локальной нейросети на VPS и настройке VPN через панель 3x-UI – оба эти решения можно развернуть прямо на том же сервере, который вы только что настроили.

Управляемый выделенный сервер

Мы позаботимся о настройке, обновлениях, мониторинге и поддержке сервера. А вы занимайтесь своими проектами.

От $66.67/месяц