Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

Dockerized Django Project

Проєкт містить Django-застосунок, PostgreSQL базу даних та Nginx вебсервер, налаштовані через Docker Compose.

Стек

  • Python 3.11
  • Django
  • PostgreSQL 16
  • Nginx 1.27
  • Docker
  • Docker Compose

Структура проєкту

.
├── config/
│   ├── settings.py
│   ├── urls.py
│   ├── asgi.py
│   └── wsgi.py
├── nginx/
│   └── nginx.conf
├── Dockerfile
├── docker-compose.yml
├── manage.py
├── requirements.txt
├── .env.example
└── README.md

Сервіси Docker Compose

  • web — Django-застосунок
  • db — PostgreSQL база даних
  • nginx — вебсервер для проксирування запитів до Django

Налаштування змінних середовища

Приклад змінних знаходиться у файлі:

.env.example

Перед запуском проєкту створіть локальний файл .env на основі .env.example:

cp .env.example .env

Файл .env не додається в Git, оскільки він може містити локальні значення змінних середовища.

Для запуску можна залишити значення з .env.example без змін.

Запуск проєкту

Створити локальний файл .env:

cp .env.example .env

Запустити всі сервіси:

docker compose up -d

Перевірити статус контейнерів:

docker compose ps

Застосувати міграції Django:

docker compose exec web python manage.py migrate

Після запуску застосунок буде доступний за адресою:

http://localhost

Перевірка доступності через Nginx

Перевірити HTTP-відповідь застосунку:

curl -I http://localhost

Очікуваний результат:

HTTP/1.1 200 OK

Перевірка PostgreSQL

Перевірити створені таблиці у базі даних:

docker compose exec db psql -U django_user -d django_db -c "\dt"

Очікувано мають бути створені стандартні таблиці Django, зокрема:

auth_user
auth_group
django_admin_log
django_content_type
django_migrations
django_session

Зупинка проєкту

docker compose down

Примітка щодо Nginx

Nginx проксирує HTTP-запити до Django-сервісу web на порт 8000.

proxy_pass http://web:8000;

Примітка щодо Docker Compose

У проєкті використовується файл:

docker-compose.yml

Для запуску використовується сучасна команда Docker Compose v2:

docker compose up -d

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages