N«Интеллектуальный ИИ-ассистент геолога» ← На главную
Техническая документация
жизненного цикла «Интеллектуальный ИИ-ассистент геолога»
2026

Содержание

  1. Общие сведения
  2. Среда и инструменты разработки
  3. Управление исходным кодом
  4. Сборка программного обеспечения
  5. Контроль качества
  6. Развёртывание и обновление
  7. Миграции базы данных
  8. Резервное копирование и восстановление
  9. Мониторинг и журналирование
  10. Техническая поддержка и устранение неполадок
  11. Управление версиями и выпуск

1. Общие сведения

Документ описывает процессы, обеспечивающие поддержание жизненного цикла программного обеспечения «Интеллектуальный ИИ-ассистент геолога»: разработку, сборку, контроль качества, развёртывание, обновление, резервное копирование, мониторинг и техническую поддержку.

ПО развивается по итеративной модели: изменения вносятся в исходный код, проходят контроль качества и автоматически разворачиваются на целевых серверах.

2. Среда и инструменты разработки

ОбластьИнструменты
Веб-интерфейсNode.js 20, TypeScript, React, Vite
Сервер приложенийNode.js 20, NestJS, Kysely
Сервис нейросетиPython 3.11, FastAPI, TensorFlow
База данныхPostgreSQL 16
КонтейнеризацияDocker, Docker Compose
Контроль версийGit

Для локальной разработки используется Docker Compose: база данных запускается в контейнере, сервисы — нативно с автоперезагрузкой либо также в контейнерах.

3. Управление исходным кодом

4. Сборка программного обеспечения

Каждый сервис собирается в отдельный Docker-образ:

Для локальной поставки предусмотрена сборка дистрибутива: образы выгружаются в архивы (docker save) и упаковываются вместе с файлами запуска в zip-архив (скрипт scripts/package-dist.sh).

5. Контроль качества

6. Развёртывание и обновление

Развёртывание автоматизировано. При публикации изменений в ветку main автоматизированный конвейер по защищённому каналу (SSH) выполняет на целевых серверах обновление:

git pull --ff-only && bash scripts/deploy.sh

Скрипт deploy.sh выполняет последовательность:

  1. запуск базы данных и ожидание её готовности;
  2. применение миграций БД;
  3. пересборку и перезапуск сервисов (docker compose up -d --build);
  4. очистку устаревших образов.

Данные в базе сохраняются между обновлениями. Для локальной поставки обновление выполняется заменой образов (docker load) и перезапуском (docker compose up -d).

7. Миграции базы данных

8. Резервное копирование и восстановление

Резервное копирование базы данных выполняется штатными средствами PostgreSQL:

docker compose exec -T postgres pg_dump -U neurogeo neurogeo | gzip > backup.sql.gz

Восстановление — из созданной копии в чистую базу. Рекомендуется выполнять резервное копирование по расписанию (cron) и хранить копии вне сервера.

9. Мониторинг и журналирование

10. Техническая поддержка и устранение неполадок

ПроблемаДействие
Сервис недоступенПроверить состояние контейнеров (docker compose ps) и журналы (docker compose logs)
Ошибка подключения к БДПроверить соответствие учётных данных БД в переменных окружения и в томе данных
Не применяются миграцииПроверить доступность БД и журнал сервера приложений при старте
Ошибка обученияУбедиться в наличии известных блоков; проверить журнал сервиса нейросети

Техническая поддержка осуществляется правообладателем по электронной почте: support@neurogeo.io.

11. Управление версиями и выпуск