Проект представляет собой интернет-магазин, созданный на основе Django 3.2, с расширенными возможностями для работы с платежами, управления изображениями товаров и взаимодействия с внешними API.
Основные технологии и библиотеки:
- Django 3.2 – основной фреймворк, организующий серверную логику и маршрутизацию.
- PostgreSQL с драйвером psycopg2-binary – используется как основная база данных для хранения товаров, заказов и информации о пользователях.
- ASGI (asgiref) – поддержка асинхронного интерфейса для повышения производительности.
- YooKassa – интеграция с платёжной системой YooKassa для безопасной обработки онлайн-платежей.
- Docker и Docker Compose – контейнеризация проекта для удобного развертывания и масштабирования.
-
Создайте файл
.envс параметрами подключения и настройками платежной системы.В командной строке выполните:
touch backend/.env
Заполните
.envследующими переменными окружения:echo " DB_HOST=music-postgres DB_PORT=5432 DB_NAME=store DB_USER=postgres DB_PASS=postgres API_KEY_YOOKASSA=<API_KEY_YOOKASSA> ID_SHOP_YOOKASSA=<ID_SHOP_YOOKASSA>" > backend/.env
-
Запустите проект с помощью Docker Compose, что автоматически соберет и запустит контейнеры для backend и базы данных.
Выполните:
docker-compose up -d --build
-
Инициализируйте базу данных при первом запуске, выполнив скрипт инициализации:
./database-init.sh
Теперь проект запущен и готов к использованию. В проекте обеспечена поддержка платежей, надёжное хранение данных в PostgreSQL, возможность масштабирования и гибкие настройки через .env.