Skip to content

Glicher-wp/backend_django_template

 
 

Repository files navigation

Django template

Стартовый шаблон для создания Django REST приложений

Шаблон для быстрого стара разработки REST приложений с использование docker контейнеров.

Особенности

  • для создания виртуального окружения и установки зависимостей используетс pipenv
  • контроль версий пакет и их совместимости осуществляется с помощью pipenv
  • разработке введется в docker контейнерах
    • dev версия: django + PostgreSQL
    • prod версия: nginx + (gunicorn + django) + PostgreSQL
  • используемая база данных PostgreSQL, но подерживается возможность использования sqlite3
  • основные конфигурационые файлы разделены на dev и prod версию
  • из коробки переопределна модель Uesr, использовано наследование от AbstractUser
  • нет необходимости пересобирать docker контейнер при изменении кода проекта

Технологии

  • Django - Web framework
  • Django Rest FrameWork - is a powerful and flexible toolkit for building Web APIs
  • Gunicorn - Python WSGI HTTP Server для UNIX
  • Docker - Package Software into Standardized Units for Development, Shipment and Deployment
  • Nginx - HTTP-сервер и обратный прокси-сервер, почтовый прокси-сервер, а также TCP/UDP прокси-сервер общего назначения
  • PostgreSQL - база данных

Перечень используемых пакетов

Основные Dev
django flake8
djangorestframework flake8-quotes
environs flake8-broken-line
psycopg2-binary flake8-return
django-filter flake8-isort
pillow pytest
gunicorn pep8-naming

Cтруктура

|--apps -> содержит приложения django
|--config -> содежит настройки django
|       |--settings -> настройки проекта
|--envfiles -> переменные виртуального окружения проекта
|       |--templates -> шаблон переменных виртуального окружения
|--nginx -> настройки web сервера
|--utils -> содержит полезные утилиты проекта

В корне проекта лежат файла для сборки контейнеров для dev и prod версии, а так же файлы с зависимостями и настройками всего проекта, в том числе стартовые скрипты создаваемых docekr контейнеров.

Использование

  • Старт dev версии:
docker-compose up -d --build
  • Старт prod версии:
docker-compose -f docker-compose.prod.yml up -d --build

License

MIT Free Software, Hell Yeah!

About

Базовый шаблон для старта django приложений

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 81.6%
  • Shell 13.8%
  • Dockerfile 4.6%