Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/annamihailovna/recipebook-project-react
🥗🥩🍰Проект «Книга рецептов» - RecipeBook. Деплой на удалённый сервер в контейнерах. Автоматизация CI/CD.
https://github.com/annamihailovna/recipebook-project-react
api ci-cd django django-rest-framework docker json postgresql python sql yml
Last synced: 26 days ago
JSON representation
🥗🥩🍰Проект «Книга рецептов» - RecipeBook. Деплой на удалённый сервер в контейнерах. Автоматизация CI/CD.
- Host: GitHub
- URL: https://github.com/annamihailovna/recipebook-project-react
- Owner: AnnaMihailovna
- Created: 2023-07-27T15:08:08.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-04T08:44:29.000Z (11 months ago)
- Last Synced: 2024-10-13T22:41:55.534Z (26 days ago)
- Topics: api, ci-cd, django, django-rest-framework, docker, json, postgresql, python, sql, yml
- Language: JavaScript
- Homepage: https://recipebook.hopto.org/
- Size: 1.39 MB
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Проект «Книга рецептов» - RecipeBook
### Описание проекта
Проект представляет собой онлайн-сервис и API для него. Сервис позволяет публиковать любимые рецепты, подписываться на других авторов, составлять список из избранных рецептов, а перед походом в магазин - скачивать сводный список продуктов для выбранных рецептов.
Проект запущен на виртуальном удалённом сервере в трёх контейнерах: nginx, PostgreSQL и Django+Gunicorn. Заготовленный контейнер с фронтендом используется для сборки файлов. Контейнер с проектом обновляется на Docker Hub.### Технологический стек
[![Python](https://img.shields.io/badge/-Python-464646?style=flat&logo=Python&logoColor=56C0C0&color=cd5c5c)](https://www.python.org/)
[![Django](https://img.shields.io/badge/-Django-464646?style=flat&logo=Django&logoColor=56C0C0&color=0095b6)](https://www.djangoproject.com/)
[![Django REST Framework](https://img.shields.io/badge/-Django%20REST%20Framework-464646?style=flat&logo=Django%20REST%20Framework&logoColor=56C0C0&color=cd5c5c)](https://www.django-rest-framework.org/)
[![PostgreSQL](https://img.shields.io/badge/-PostgreSQL-464646?style=flat&logo=PostgreSQL&logoColor=56C0C0&color=0095b6)](https://www.postgresql.org/)
[![Nginx](https://img.shields.io/badge/-NGINX-464646?style=flat&logo=NGINX&logoColor=56C0C0&color=cd5c5c)](https://nginx.org/ru/)
[![gunicorn](https://img.shields.io/badge/-gunicorn-464646?style=flat&logo=gunicorn&logoColor=56C0C0&color=0095b6)](https://gunicorn.org/)
[![Docker](https://img.shields.io/badge/-Docker-464646?style=flat&logo=Docker&logoColor=56C0C0&color=cd5c5c)](https://www.docker.com/)
[![Docker-compose](https://img.shields.io/badge/-Docker%20compose-464646?style=flat&logo=Docker&logoColor=56C0C0&color=0095b6)](https://www.docker.com/)
[![Docker Hub](https://img.shields.io/badge/-Docker%20Hub-464646?style=flat&logo=Docker&logoColor=56C0C0&color=cd5c5c)](https://www.docker.com/products/docker-hub)
[![GitHub%20Actions](https://img.shields.io/badge/-GitHub%20Actions-464646?style=flat&logo=GitHub%20actions&logoColor=56C0C0&color=0095b6)](https://github.com/features/actions)
[![Yandex.Cloud](https://img.shields.io/badge/-Yandex.Cloud-464646?style=flat&logo=Yandex.Cloud&logoColor=56C0C0&color=cd5c5c)](https://cloud.yandex.ru/)### Запуск проекта в контейнерах
- Клонирование удаленного репозитория
```bash
[email protected]:AnnaMihailovna/RecipeBook-project-react.git
cd infra
```
- В директории /infra создайте файл .env с переменными окружения
- Сборка и развертывание контейнеров
```bash
docker compose up -d --build
```
- Выполните миграции, соберите статику, создайте суперпользователя
```bash
docker compose exec backend python manage.py makemigrations
docker compose exec backend python manage.py migrate
docker compose exec backend python manage.py collectstatic
sudo docker compose exec backend cp -r /app/collected_static/. /app/backend_static/static/
docker compose exec backend python manage.py createsuperuser
```
- Наполните базу данных ингредиентами и тегами
```bash
docker compose exec backend python manage.py import
```### Суперпользователь:
Логин: ```admin```Email: ```[email protected]```
Пароль: ```1234```### Тестовые пользователи:
Логин: ```user3new```
Email: ```[email protected]```
Пароль: ```user3123456```--------------------------
Логин: ```user7new```
Email: ```[email protected]```
Пароль: ```user7123456```--------------------------
Логин: ```user9new```
Email: ```[email protected]```
Пароль: ```user9123456```## Ссылки
### Документация API проекта:
http://recipebook.hopto.org/api/docs/redoc.html### Развёрнутый проект:
http://recipebook.hopto.orghttp://recipebook.hopto.org/admin/
(временно приостановлено, переезжаем)
### Автор бэкенда и деплой
[AnnaMihailovna](https://github.com/AnnaMihailovna/)