---
title: "Установка и запуск"
description: "Поднять Notarium одним Docker-контейнером, открыть его на localhost:3000 и пройти setup-экран, который заводит владельца."
---

# Установка и запуск

Notarium поставляется как **один самодостаточный образ**: один процесс отдаёт веб-интерфейс, REST-API и MCP-эндпоинт для агентов, а движок знаний работает прямо внутри него. Внешних сервисов — базы, брокера, отдельного поискового движка — не нужно. Всё, что требуется для старта, — Docker и свободный порт.

Эта страница — быстрый путь: поднять инстанс, открыть его в браузере и завести владельца. Детальный self-host (Postgres, reverse proxy, продакшн-конфигурация) вынесен в раздел [Self-host](/docs/self-hosting/).

## Что понадобится

- **Docker** (или Docker Desktop) — больше ничего ставить не нужно: Node, база и поисковый индекс уже внутри образа.
- Свободный порт — по умолчанию **3000**.
- Немного места на диске под ваши заметки и производный индекс.

## Запуск одним контейнером

Самый короткий путь — запустить готовый образ `docouno/notarium`:

```bash
docker run -d --name notarium \
  -p 3000:3000 \
  -v notarium-data:/data \
  docouno/notarium:latest
```

Через пару секунд откройте `http://localhost:3000`.

Один том `/data` держит всё состояние — служебную БД, индексы, ваши заметки, артефакты экспорта. Больше задавать нечего: порт 3000 и путь данных `/data` уже заданы в образе. Порт слева от `3000` можно сменить на любой свободный.

> [!note] Сборка из исходников
> Если образ ещё не подтянулся из реестра — соберите из исходников основного репозитория Notarium командой `make up` (см. ниже): поведение идентично.

Альтернатива — сборка из исходников через `make`, единую точку входа для всего, что в Docker:

```bash
cp .env.example .env   # дефолты рабочие — заполнять ничего не обязательно
make up                # собрать прод-образ и поднять → http://localhost:3000
```

Прочие команды пригодятся при эксплуатации: `make logs` — логи, `make ps` — статус, `make down` — остановить и удалить, `make sh` — shell в контейнере.

## Тома: где лежат данные

Всё состояние живёт в одном томе — его и нужно беречь при пересоздании контейнера:

| Том | Точка монтирования | Что хранит |
|---|---|---|
| `notarium-data` | `/data` | Всё: ваши заметки (`/data/spaces`), служебную БД (`/data/meta.db`), производные индексы поиска (`/data/engine`) и артефакты экспорта (`/data/jobs`) |

Ключевой принцип — **file-first**: истина — это `.md`-файлы в `/data/spaces`. Индексы поиска и граф в `/data/engine` — производное: они пересобираются из файлов, и их потеря восстановима реиндексом. А служебная БД `/data/meta.db` — история версий, пользователи и доступы — живёт только в томе, поэтому `/data` берегут наравне с заметками. Для бэкапа обязательны ваши заметки и `meta.db`; производные индексы бэкапить не обязательно.

> [!tip] Свой порт
> Порт `3000` меняется левой частью `-p <свой>:3000` (или переменной `PORT` в `.env`). Образ слушает на всех интерфейсах контейнера — наружу отдаёт ровно то, что вы пробросили.

## Первый запуск: setup-экран

При первом визите Notarium встретит вас **setup-экраном**. Преднастроенного пароля нет: первый посетитель заводит **владельца** инстанса — этот аккаунт становится администратором и владельцем создаваемых пространств. После этого setup закрывается навсегда, а вы оказываетесь в редакторе, уже внутри своего личного пространства.

Так работает режим аутентификации по умолчанию — `AUTH_MODE=password`. Он рассчитан на публично доступный инстанс: логин, сессии, персональные токены для агентов. Второй режим — `none` (единственный принципал с полным доступом, без экрана логина) — подходит только для доверенного окружения: рабочего стола, локальной разработки или закрытого интранета. Подробности — в разделе [Аутентификация](/docs/self-hosting/authentication/).

## Базовая конфигурация

Дефолты zero-config: для старта достаточно образа как есть. Тонкая настройка — через переменные окружения (в Docker их прокидывает `.env`, в образ ничего не запекается):

| Переменная | Значение | По умолчанию |
|---|---|---|
| `PORT` | Порт, который слушает сервер | `3000` |
| `AUTH_MODE` | `password` (логин + setup) или `none` (доверенное окружение) | `password` |
| `VECTOR_SEARCH` | Включить семантический (векторный) поиск в дополнение к лексическому | `off` в образе |

Полнотекстовый поиск работает всегда и без настройки. Семантический (векторный) поиск включается по желанию, флагом `VECTOR_SEARCH=on`: он подтягивает локальную модель эмбеддингов (порядка сотен мегабайт RAM), поэтому в опубликованном образе выключен и включается осознанно. Без него поиск продолжает работать по полному тексту — без ошибки, это штатный режим. Полный список переменных и настройка поиска — в разделах [Конфигурация](/docs/self-hosting/configuration/) и [Настройка поиска](/docs/self-hosting/search-setup/).

## Дальше

Инстанс поднят и владелец заведён — время наполнить базу и открыть её агенту:

- [Первая заметка](/docs/getting-started/first-note/) — дерево файлов, веб-редактор и сохранение в `.md`.
- [Подключить агента](/docs/getting-started/connect-agent/) — токен, эндпоинт `POST /mcp` и первый вызов.

Хочется понять модель целиком — загляните в раздел [Концепции](/docs/concepts/): пространства, типы заметок, граф и модель доступа.
