RecipeDB - сайт для размещения кулинарных рецептов
- Реализована регистрация пользователей через djoser
- Вход на сайт осуществляется с помощью электронной почты и пароля
- Публикация рецептов, с добавлением необходимых ингридиентов и времени приготовления
- Поиск по ингридиентам при создании рецепта
- Возможность задать теги для рецептов
- Фильтрация рецептов по тегам
- Подписка на авторов рецептов, добавление рецептов в избранное
- Добавление рецептов в корзину покупок и скачивание их списка продуктов в txt
- Проект запускается в четырех контейнерах: nginx, PostgreSQL, frontend и Django
- Обновление образа проекта в Docker Hub
- Автоматический запуск тестов flake8 при обновлении проекта
- Автоматическое обновление образа в Docker Hub **
- Автоматический деплой проекта на сервер и его запуск в Docker **
**только при мерже pull request в ветку main
- Python 3.9
- Django 4.0.4
- Django REST framework 3.13.1
- PostgreSQL 14.3
- Gunicorn 20.1.0
- nginx 1.22.0
- React
Скопируйте файлы из папки infra/ и папку docs/ на свой сервер
scp infra/docker-compose.yml <ваш_логин_на_сервере>@<адрес_вашего_сервера>:~/
scp infra/nginx.conf <ваш_логин_на_сервере>@<адрес_вашего_сервера>:~/
scp -r docs/ <ваш_логин_на_сервере>@<адрес_вашего_сервера>:~/
Зайдите на свой удаленный сервер и установите Docker
ssh <ваш_логин_на_сервере>@<адрес_вашего_сервера>
sudo apt install docker.io
В домашней папке на сервере создайте файл .env и заполните своими данными:
HOST= # адрес вашего удаленного сервера
USERNAME= # ваш логин на удаленном сервере
SSH_KEY= # ваш приватный ключ ssh (по умолчанию просмотр командой cat ~/.ssh/id_rsa)
PASSPHRASE= # фраза-пароль при создании ssh ключа
DOCKERHUB_USERNAME= # ваш логин на docker.com
DOCKERHUB_TOKEN= # ваш пароль на docker.com
SECRET_KEY= # ключ для генерации хэша Django
DEBUG= # значение Debug
DB_ENGINE= # укажите используемую БД
DB_NAME= # имя базы данных
POSTGRES_USER= # логин для подключения к БД
POSTGRES_PASSWORD= # пароль для подключения к БД
DB_HOST= # название сервиса (контейнера) БД
DB_PORT= # порт для подключения к БД
При запущенном проекте откройте ссылку в браузере:
http://<адрес_вашего_сервера>/api/docs/redoc.html
MIT