Для запуска проекта, в терминале выполните команду:
docker-compose up
Примечание: Должны быть свободны следующие порты: 9999 - для nginx, 6379 - для redis
Используемые сервисы:
- flask
- nginx
- db - PostgresQL
- redis
Каждый сервис запускается в собственном контейнере. Связываются контейнеры между собой через Docker Compose. Связь с внешней сетью осуществляется посредством Nginx, который используется как reverse-proxy server.
Используемые модули:
- Flask - Основа веб-приложения
- Flask-Bootstrap4 - Bootstrap 4 для фронтенда
- Flask-Login - Используется для получения текущего пользователя, входа и выхода из системы
- flask-redis - Применяется для взаимодействия с Redis
- Flask-SQLAlchemy - ORM для работы с БД (PostgresQL)
- Flask-WTF - Формы для регистрации, входа в систему и отправки сообщений
- psycopg2 - Модуль для взаимодействия с PostgresQL
- uWSGI - Веб-сервер
- Werkzeug - Использованы функции безопасности (создание и проверка хэша пароля пользователя)
Для выполнения задания была заложена неделя, поскольку было необходимо изучить следующие технологии:
- Flask
- Flask-Bootstrap4
- Flask-Login
- Flask-SQLAlchemy
- Flask-WTF
- Werkzeug
На выполнение задания ушла неполная неделя: 5-6 дней.