Skip to content

coldcloudgold/Django-Site

Repository files navigation

Site

Суть проекта:

Социальная сеть, с модерацией записей администраторами.

Стек:

  1. База данных: PostgreSQL.

  2. Фреймворк: Django.

  3. Очередь (задача с периодическим выполнением): Celery.

  4. Брокер сообщений: RabbitMQ.

  5. Кэшироование: Memcached.

  6. WSGI: Gunicorn.

  7. Веб-сервер: Nginx.

  8. Развертывание: Docker-Compose.

Пример работы:

Регистрация:

Через социльные сети:

alt

Обычная регистрация:

alt

Добавление записи:

alt

Оповещение администратора, проверка и добавление записи в общую ленту:

alt

Система подписок на интересных авторов, комментарии, RSS-лента:

alt

Запуск проекта:

Dev:

  1. Изменить название example.env на .env, заранее внеся в него коррективы.

  2. Запустить проект:

mkdir media/ static/ dev_send_mail/ ; ./dev_entrypoint.sh

  1. Перейти в браузере по адресу:

127.0.0.1:8080

Prod:

  1. Изменить название example.env на .env, заранее внеся в него коррективы.

  2. Убедиться, что необходимые порты для работы проекта не заняты (8080 - nginx, 5433 - postgres, 5673 - rabbitmq, 8001 - django/gunicorn, 11212 - memcached):

sudo netstat -tulpn | grep :<xxxx>

где xxxx - номер порта.

  1. Если на данных портах запущены стандартные сервисы, их необходимо выключить:
sudo kill `sudo lsof -t -i:<xxxx>`
  1. Создать docker-compose:

mkdir media/ static/ ; docker-compose build

  1. Запустить docker-compose:

docker-compose up -d

Примерно через 30 секунд сервис станет пригодным для использования.

  1. Перейти в браузере по адресу:

127.0.0.1:8080

  1. Остановить и удалить docker-compose:

docker-compose down -v

Полезное:

Зайти в панель администратора (пользователь создается по умолчанию), если не менялись соответствующие параметры в окружении:

Name: name_admin
Email: email_admin@admin.admin
Password: password_admin

About

Сайт-блог, построенный на Django

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published