Skip to content

Kaydalova/easy_recipes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

Easy recipes- Продуктовый помощник

foodgram_workflow


Приложение, на котором пользователи будут публиковать рецепты, добавлять чужие рецепты в избранное и подписываться на публикации других авторов. Сервис «cписок покупок» позволит пользователям создавать список продуктов, которые нужно купить для приготовления выбранных блюд. Есть возможность выгрузить файл (.txt) с перечнем и количеством необходимых ингредиентов для рецептов.

Доступ

Проект запущен на сервере и доступен по адресу:

Стек технологий

  • Python
  • Django
  • Django REST Framework
  • PostgreSQL
  • Docker
  • Github Actions

Установка проекта локально

  • Склонировать репозиторий на локальную машину:
git clone git@github.com:Kaydalova/easy_recipes.git
cd foodgram-project-react
  • Cоздать и активировать виртуальное окружение:
python3 -m venv venv
source venv/bin/activate
  • Cоздайте файл .env в директории /infra/ с содержанием:
SECRET_KEY=секретный ключ django
DB_ENGINE=django.db.backends.postgresql
DB_NAME=postgres
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
DB_HOST=db
DB_PORT=5432
  • Перейти в директирию и установить зависимости из файла requirements.txt:
cd foodgram/
pip install -r requirements.txt
  • Выполните миграции:
python manage.py migrate
  • Загрузите ингредиенты:
python manage.py import_csv
  • Запустите сервер:
python manage.py runserver

Запуск проекта в Docker контейнере

  • Установите Docker и docker compose плагин.

Параметры запуска описаны в файлах docker-compose.yml и nginx.conf которые находятся в директории infra/.
Измените список ip адресов в файле nginx.conf

  • Запустите docker compose:
docker compose up -d --build

После сборки появляются 3 контейнера:

  1. контейнер базы данных db
  2. контейнер приложения backend
  3. контейнер web-сервера nginx
  • Примените миграции:
docker compose exec backend python manage.py migrate
  • Загрузите ингредиенты:
docker сompose exec backend python manage.py import_csv
* Создайте администратора:
```bash
docker compose exec backend python manage.py createsuperuser
  • Соберите статику:
docker compose exec backend python manage.py collectstatic --noinput

About

The app for posting cooking recipes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors