Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Почтовый сервис (Mail Service)

Python Django Django REST Framework gunicorn
React Bootstrap
PostgreSQL
Docker Docker-compose Docker Hub
Nginx Yandex Cloud

Описание проекта Mail Service

Клиент-серверное приложение, разработанное в рамках курсовой работы по дисциплине "Разработка клиент-серверных приложений". В приложении можно посмотреть список писем, перейти на страницу с письмом, переместить письмо в спам или в корзину, изменить статус "прочитано" и отправить письмо.

image

Запуск проекта через Docker

Установить Docker, используя инструкции с официального сайта:


  • Клонируйте репозиторий с проектом на свой компьютер. В терминале из рабочей директории выполните команду:
git clone https://github.com/BikMag/mail_service.git
  • Перейти в папку с бэкендом
cd mail_service/backend
  • Установить и активировать виртуальное окружение
source /venv/bin/activate
  • Установить зависимости из файла requirements.txt
python -m pip install --upgrade pip
pip install -r requirements.txt
  • Создать файл .env в папке проекта:
POSTGRES_DB=postgres
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
DB_NAME=postgres
DB_HOST=db
DB_PORT=5432
DEBUG=False
SECRET_KEY=django-insecure-...
  • В папке proxy выполнить команду для запуска контейнера в фоновом режиме:
docker-compose up -d --build
  • В результате должны быть собрано три контейнера (контейнер с фронтендом собирает статику и выключается), при введении следующей команды получаем список запущенных контейнеров:
docker-compose ps

Назначение контейнеров:

NAMES IMAGES DESCRIPTIONS
mailservice-proxy nginx:1.25.4-alpine контейнер веб-сервера
mailservice-db postgres:13.10 контейнер базы данных
mailservice-back proxy-backend:latest контейнер приложения Django
mailservice-front proxy-frontend:latest контейнер приложения React
  • Выполнить миграции:
docker-compose exec backend manage.py migrate
  • Собрать статику и перенести ее в папку static:
docker-compose exec backend python manage.py collectstatic
docker-compose exec backend cp -r /app/collected_static/. /static/static/
  • Создать нового супер пользователя
python manage.py createsuperuser

Основные адреса:

Адрес Описание
localhost Главная страница
localhost/admin/ Для входа в панель администратора
localhost/api/docs/ Описание работы API

About

Почтовый сервис

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages