Разделы
Начало работы
Быстрый стартCLI-флаги и конфиг
SQL
Диалект FileDB SQLDDLDMLSELECTФункции и выраженияТранзакции
Клиенты
HTTP APIНативные драйверыPostgreSQL / MySQL wire-протоколБинарный RPC
Возможности
RBAC (multi-user)Эмбеддинги (семантический поиск)Импорт файловБэкапыДемо-режим-витрина и управление .fdb
Эксплуатация
ДеплойАрхитектураFileDB на Windows: трей и автозагрузка
Справка
Сравнение с PostgreSQL / MySQL
AI
AI-функции: обзорAI-чат и AI-агентУмный экспорт и AI-маппинг импортаЭмбеддинги и гибридный поискНастройка AI: провайдеры и пресеты
Дашборды
Дашборды: обзорДатасеты и чартыNo-Code конструктор запросовAI-ассистент дашбордовВиджеты, сетка и фильтрыПубличные ссылки и экспортРаскладка, текстовые карточки и KPI-сравнение

Деплой

FileDB — статический Go-бинарник без внешних зависимостей: ни libc, ни системных пакетов. FileDB однонодовая по дизайну — репликации нет; каждая реплика должна иметь свой каталог данных.

Способ Когда использовать
Docker Разовые деплои, dev/test, всё эфемерное
Docker Compose Продакшен на одном хосте с reverse proxy
Kubernetes Много реплик, managed-кластеры
systemd Долгоживущие Linux VM, bare-metal
Windows-служба Windows-серверы — через NSSM или Task Scheduler

Docker

docker run -d --name filedb 
  -p 127.0.0.1:8080:8080 
  -v filedb-data:/data 
  -e FILEDB_PASSWORD=$(openssl rand -hex 24) 
  -e FILEDB_TRUSTED_PROXY=172.17.0.1 
  --read-only --tmpfs /tmp --cap-drop=ALL --security-opt=no-new-privileges 
  ghcr.io/filedb/filedb:2.10

Ключевое: никогда не публикуйте порт наружу напрямую (-p 127.0.0.1:8080:8080, не -p 8080:8080) — перед FileDB всегда должен стоять nginx/Caddy.

systemd (Linux VM / bare-metal)

sudo useradd --system --home /var/lib/filedb --shell /usr/sbin/nologin filedb
sudo mkdir -p /var/lib/filedb /var/log/filedb /etc/filedb
sudo chown filedb:filedb /var/lib/filedb /var/log/filedb
sudo install -m 755 filedb /usr/local/bin/
sudo install -m 644 filedb.service /etc/systemd/system/
sudo install -m 600 /dev/stdin /etc/filedb/env <<EOF
FILEDB_PASSWORD=$(openssl rand -hex 24)
FILEDB_TRUSTED_PROXY=127.0.0.1
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now filedb

Windows-служба (NSSM)

nssm install FileDB "C:Program Filesfiledbfiledb.exe"
nssm set FileDB AppParameters "-data C:ProgramDatafiledbdata -addr :8080"
nssm set FileDB ObjectName "NT AUTHORITYLocalService"
nssm set FileDB AppEnvironmentExtra "FILEDB_PASSWORD=$(New-Guid)"

Graceful shutdown на Windows — эквивалент SIGTERM это Ctrl+Break; NSSM шлёт его первым, у бинарника есть время на чистое завершение перед SIGKILL.

Reverse proxy

FileDB не терминирует TLS сам — всегда ставьте nginx или Caddy перед ним. Caddy проще всего для автоматического Let's Encrypt:

db.example.com {
    reverse_proxy filedb:8080 {
        header_up X-Real-IP {remote_host}
        header_up X-Forwarded-For {remote_host}
    }
}
Похожие страницы
← Назад
Демо-режим-витрина и управление .fdb
Далее →
Архитектура