/backend

Это репозитория с кодом на Python, которая содержит весь backend.

Primary LanguagePythonMIT LicenseMIT

Структура проекта

Данный проект имеет следующую структуру:

├── Dockerfile
├── LICENSE
├── api
│ ├── init.py
│ ├── pycache
│ │ └── construction.cpython-310.pyc
│ ├── construction.py
│ ├── test_construction.py
│ └── twogis.py
├── database
│ ├── init.py
│ ├── pycache
│ └── communication.py
├── main.py
├── requirements.txt
└── test
├── client.py
├── db_test.py
├── file.mp4
├── geo_test.py
├── test_api.py
└── upload_video.py

Структура проекта состоит из следующих компонентов:

Dockerfile: Определяет Docker-образ для запуска приложения.
LICENSE: Файл лицензии для проекта.
api: Содержит модули Python, связанные с функциональностью API.\ init.py: Файл инициализации для пакета api.
pycache: Директория для кэшированных байт-кодов (автоматически создается).
construction.py: Модуль Python для функциональности, связанной с конструкцией.
test_construction.py: Юнит-тесты для модуля construction.
twogis.py: Модуль Python для взаимодействия с API TwoGIS.
database: Содержит модули Python, связанные с взаимодействием с базой данных.
init.py: Файл инициализации для пакета database.
pycache: Директория для кэшированных байт-кодов (автоматически создается).
communication.py: Модуль Python для взаимодействия с базой данных.
main.py: Главная точка входа в приложение.
requirements.txt: Файл, указывающий зависимости Python, необходимые для проекта.
test: Директория, содержащая файлы, связанные с тестированием.
client.py: Модуль Python для тестирования клиента API.
db_test.py: Юнит-тесты для модуля базы данных.
file.mp4: Тестовый видеофайл.
geo_test.py: Юнит-тесты для функциональности геолокации.
test_api.py: Интеграционные тесты для API.
upload_video.py: Модуль Python для загрузки видеофайлов.

Установка и запуск бэкенда

Чтобы установить и запустить бэкенд, выполните следующие шаги:
Установка для разработки
Убедитесь, что на вашей системе установлен Docker.
Откройте терминал и перейдите в корневую директорию проекта.
Сборка Docker-образа
Соберите Docker-образ с помощью следующей команды:
docker build -t backend .
Запуск бэкенда в режиме разработки
Запустите Docker-контейнер из созданного образа:
docker run -it --rm -p 8000:8000 backend
Эта команда запускает контейнер и перенаправляет порт 8000 из контейнера на хост.

Бэкенд теперь должен быть доступен локально по адресу http://localhost:8000.

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

Для развертывания бэкенда в производственной среде можно использовать облачную платформу или систему оркестрации контейнеров, такую как Kubernetes. Вот общие шаги для развертывания бэкенда:

Убедитесь, что у вас есть подходящая среда для развертывания, такая как облачный сервер или кластер Kubernetes.

Соберите Docker-образ бэкенда, следуя описанным в разделе "Установка для разработки" шагам.

Загрузите созданный Docker-образ в реестр контейнеров, к которому ваша среда развертывания может получить доступ.

Настройте конфигурацию развертывания, соответствующую вашей среде развертывания (например, файлы YAML-конфигурации развертывания Kubernetes или специфичные для облачной платформы конфигурации).

Разверните бэкенд с использованием конфигурации развертывания, обеспечив правильную настройку переменных среды, портов и ресурсов.

Отслеживайте процесс развертывания, чтобы убедиться, что он работает без сбоев, и обработайте любые возможные вопросы масштабирования, сетевого взаимодействия или конфигурации, специфичные для вашей среды развертывания.

После завершения развертывания бэкенд должен быть доступен в соответствии с настройками вашей среды развертывания.

Обязательно ознакомьтесь с документацией или руководствами по вашей конкретной среде развертывания для получения более подробных инструкций по развертыванию контейнеров Docker.

Не забудьте правильно настроить аутентификацию, авторизацию и сетевые контроли, чтобы обеспечить безопасность вашего бэкенда в соответствии с конкретными требованиями.