Skip to content

ProkhorKondratev/ngw_kadastr

Repository files navigation

Сервис пакетной конвертации кадастровых данных

Оглавление

Описание

Сервис позволяет выполнять пакетную выгрузку кадастровых кварталов (в виде наборов геоданных) по охвату, который может быть передан в виде GeoJSON или SHP-файлов в ZIP-архивах. Выгрузка осуществляется через внешний сервис NextGIS Toolbox.

Требования

  • Python 3.12
  • Poetry
  • Docker
  • Docker compose
  • npm

Установка

  1. Клонируйте репозиторий и перейдите в каталог проекта:

    git clone https://github.com/ProkhorKondratev/ngw_kadastr.git
    cd ngw_kadastr

    Примечание: Параметры доступа к NG Toolbox указываются в файле .env (пример в .env.example)

Структура

  • Проект состоит из приложения app, которое включает главный файл main.py, содержащий основные API-эндпоинты для взаимодействия с сервисом.

  • В папке share хранятся данные, которые будут переданы при развертывании на удалённом сервере.

  • Папка data содержит файлы базы данных, логов, файлов для обработки (Создается автоматически при запуске).

Разработка

Для запуска сервиса в режиме разработки необходимо:

  1. Установить зависимости:

    poetry install
  2. Активировать окружение:

    source .venv/bin/activate
  3. Выполнить запуск:

    docker compose up -d
    fastapi dev
    # В отдельном терминале (опционально):
    celery -A app.worker worker --loglevel=info --concurrency=1

Развертывание

Для развертывания на удалённом сервере выполните следующие шаги:

  1. Из корня проекта выполните скрипт сборки:

    ./build.sh

    В результате сборки в папке share будет сохранен образ проекта.

  2. Для развертывания на удалённом сервере выполните:

    ./deploy.sh

    Это приведёт к удаленной остановке текущей версии сервиса, переустановке и запуску новой версии на сервере.

    Примечание: Параметры подключения к внешнему серверу конфигурируются непосредственно в скрипте deploy.sh.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published