Перейти до основного вмісту

Сховище SQLite

Типово Libre WebUI зберігає чати, повідомлення, користувачів, налаштування, документи, фрагменти, персони, облікові дані плагінів, пам’ять і метадані в одній локальній базі SQLite.

Розташування

Джерело:

  1. DATA_DIR, якщо задано; відносний шлях обчислюється від каталогу серверної частини.
  2. backend/data, якщо ні.

Для сумісності без налаштування використовується backend/backend/data, якщо це єдине довговічне сховище. Якщо стан є в обох, запуск вимагає явного вибору й не копіює чи об’єднує.

Засіб запуску з пакета npm/Homebrew типово використовує ~/.libre-webui й розв’язує відносний DATA_DIR від каталогу виклику. Docker/Kubernetes задають абсолютні шляхи.

Файл — data.sqlite.

DATA_DIR=/var/lib/libre-webui

Що зберігає SQLite

Користувачів і ролі, сеанси й повідомлення, налаштування інтерфейсу, документи й фрагменти, персони/пам’ять/мутації, облікові дані плагінів і прив’язки маршрутизації та автентифікації, змінні, активації, схвалення, каталоги моделей, системні налаштування, а також власність Work, маршрути, запуски, повідомлення, активність інструментів, стан та ID Docker. Чутливі значення шифруються на рівні застосунку.

Work розділено

Розмова й метадані Work у SQLite, файли — в окремому іменованому Docker-томі на /workspace. Контейнер замінний, том довговічний.

Резервна копія бази без томів неповна. Резервуйте томи; вони мають мітки ai.libre-webui.managed=true й ID завдання.

Видалення завдання назавжди видаляє записи й том. Скасування запуску, зупинка попереднього перегляду або перезапуск серверної частини не видаляють файлів.

Сумісність JSON

Старі інсталяції використовували JSON для частини даних; тепер основним є SQLite із рівнем служб і моделей. Перед оновленням резервуйте весь каталог.

Активація з .status.json один раз переноситься в рядки кожного користувача лише для точних вбудованих визначень. Власні й тіньові визначення залишаються в карантині до повторного імпорту; схвалення не повертає старих активацій. Нові облікові записи починають без активних плагінів.

Резервне копіювання

Зупиніть серверну частину:

cp -R backend/data backend/data.backup
cp -R "$DATA_DIR" "$DATA_DIR.backup"

Для Work також резервуйте всі керовані томи. База, ключ і томи мають відповідати одному моменту.

Відновлення

Зупиніть серверну частину, замініть каталог і запустіть її. Збережіть той самий ENCRYPTION_KEY.

Для Work відновіть томи під точними іменами до запуску. Libre відтворить контейнер, але не відсутні файли з історії.

Експлуатаційні примітки

SQLite використовує WAL. Каталог має бути доступним для запису. DATA_DIR у Docker/Kubernetes має бути постійним. Резервуйте ENCRYPTION_KEY. Окремо враховуйте томи Work.

Пов’язані документи