LOGORIC / KNOWLEDGE

Инструкции и шаблоны

Настройка каждого раздела, проверка результата и готовые сценарии для вашего проекта.

Эксплуатация · Руководство на русском

Self-host: резервные копии и восстановление

Резервные копии и восстановление собственной установки. В облаке эксплуатацию сервера выполняет команда Logoric.

Порядок настройки

  1. Выполните make backup: CLI использует VACUUM INTO, поэтому snapshot согласован при работающем WAL. По имени из вывода скопируйте файл из /data через docker compose cp.
  2. Отдельно сохраните /data/encryption.key с ограничением доступа и шифрованием. Без соответствующего ключа секреты каналов восстановить нельзя. Не копируйте только живой основной .db без WAL.
  3. Для учебного восстановления подготовьте отдельный каталог и остановленную изолированную установку. Выполните ./bin/logoric-admin restore --input ./backup.db --db ./restore/restored.db. Каталог должен существовать; целевой файл должен быть новым.
  4. Перенесите соответствующий encryption.key в data dir, настройте LOGORIC_DB_PATH на restored.db и запустите изолированную установку. Compose по умолчанию не передаёт этот override: добавьте его в environment server в override-файле.
  5. Проверьте вход, количество сервисов/правил/инцидентов, источник и разрешённую тестовую доставку. До включения внешних каналов убедитесь, что это нужная установка.
  6. Перед обновлением сделайте backup, сохраните прежнюю версию исходников/образа, затем docker compose up --build -d. Откат требует совместимой версии кода и согласованного backup; автоматического downgrade нет.
make backup
# Замените имя на имя из вывода make backup
docker compose cp server:/data/backup-YYYYMMDD-HHMMSS.db ./backup.db
docker compose cp server:/data/encryption.key ./encryption.key

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

Есть проверенный комплект БД+ключ и записанный порядок восстановления. Файл restore не перезаписал рабочую БД.

Если не получается

Restore отказывает при существующем target — используйте новый путь. После потери пароля: docker compose exec -it server /logoric-admin reset-password --email YOUR_EMAIL. Это отзывает сессии и API-ключи пользователя.