Cайт Foodgram «Продуктовый помощник» - это онлайн-сервис и API для него. На этом сервисе пользователи могут публиковать рецепты, подписываться на публикации других пользователей, добавлять понравившиеся рецепты в список «Избранное», а перед походом в магазин скачивать сводный список продуктов, необходимых для приготовления одного или нескольких выбранных блюд.
Ссылка на проект на сервере Yandex.Cloud
Логин (email) суперюзера: [email protected]
Пароль суперюзера: admin
- Python 3.7+
- Docker
- Works on Linux, Windows, macOS
Клонируйте репозиторий с проектом и перейдите в него:
git clone https://github.com/psevdoslon-ya/foodgram-project-react.git
cd foodgram-project-react
Создайте и активируйте виртуальное окружение:
python3.7 -m venv venv
. venv/bin/activate
Перейдите в директорию с файлом docker-compose.yaml:
cd infra
Cоздать и открыть файл .env с переменными окружения:
touch .env
Заполнить .env файл переменными окружения (SECRET_KEY см. в файле settings.py). Пример файла с переменными окружения .env:
#.env
DB_ENGINE=<django.db.backends.postgresql>
DB_NAME=<имя базы данных postgres>
POSTGRES_USER=<пользователь бд>
POSTGRES_PASSWORD=<пароль>
DB_HOST=<db>
DB_PORT=<5432>
SECRET_KEY=<секретный ключ проекта django>
Запуск docker-compose.yaml:
sudo docker-compose up -d --build
После успешного запуска проекта выполните миграции:
sudo docker-compose exec backend python manage.py makemigrations
sudo docker-compose exec backend python manage.py migrate
Создайте суперпользователя:
sudo docker-compose exec backend python manage.py createsuperuser
Соберите статику:
sudo docker-compose exec backend python manage.py collectstatic --no-input
Наполните БД заготовленными данными:
sudo docker-compose exec backend python manage.py loaddata ingredients.json
sudo docker-compose exec backend python manage.py loaddata tags.json
Для остановки контейнеров и удаления всех зависимостей воспользуйтесь командой:
sudo docker-compose down -v