Giter Site home page Giter Site logo

orm-examples's Introduction

Пример Django проекта

Useful packages

  • django-extensions - расширенные команды для Django, и много чего еще
  • factory-boy - генерация тестовых данных

Makefile and shortcuts

В данном проекте используется Makefile. Он содержит шорт-каты - короткие команды-обертки, внутри которых выполняется 1 и более команда.

Например, для создания нового супер-пользователя для локальной разработки вместо команды

python3 manage.py createsuperuser --email [email protected] --username root -v 3

можно будет использовать шорткат createlocalsu:

make createlocalsu

Подробнее про Makefile

Docker


Важное: Deleting docker entities


Собираем docker-образ проекта:

docker build . -t orm-examples

Создаем контейнер

docker create --name orm-examples -p 8000:8000 -v "$(pwd)":/home/www/app orm-examples

Список всех контейнеров

docker ps -a

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

docker start orm-examples

Открываем логи нашего контейнера

docker logs orm-examples

Останавливаем контейнер

docker stop orm-examples

Создаем пустую базу данных

mkdir db
touch ./db/db.sqlite3

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

docker start orm-examples

Открываем логи нашего контейнера

docker logs orm-examples

Проваливаемся внутрь контейнера, применяем миграции, создаем суперпользователя и тестовые данные

docker exec -it orm-examples bash
python3 manage.py migrate
python3 manage.py createsuperuser --email [email protected] --username root -v 3
python3 manage.py filldb

Получаем информацию о контейнере

docker inspect orm-examples

Получаем информацию об IP-адресе

docker inspect orm-examples | grep -i "ipaddress"

Останавливаем и удаляем контейнер

docker stop orm-examples && docker rm orm-examples

Docker-compose

Собираем

docker-compose build

Запускаем

docker-compose up
docker-compose up -d backend-dev

Сеть в docker-compose, часть 1

Пересобираем контейнеры

docker-compose stop && docker-compose build

Заходим в контейнер backend-prod

docker exec -it orm-examples_backend-prod_1 bash

Стучимся в контейнер backend-dev

curl backend-dev

А теперь с указанием доступного порта

curl backend-dev:8000

Инфраструктура Django-проекта

export DJANGO_SETTINGS_MODULE="config.production"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.