Развертывание студенческих проектов

Для того, чтобы упростить процедуру развертывания студенческих проектов на кафедральных серверах, составлен список необходимых требований. Эти требования должны быть выполнены перед тем, как проект будет размещен на кафедральных ресурсах.

Веб-приложения

проект запакован в docker-compose, конфигурация собирается и запускается одним скриптом

в скриптах установки зависимостей и Docker файлах указаны версии всех пакетов

в скриптах указаны точные версии интерпретаторов (Например, python3.8)

ключи шифрования, сертификаты, пароли и любые чувствительные данные передаются через .env файл

Если в проекте есть СУБД:

она располагается в отдельном контейнере

каталог с файлами данных СУБД монтируется в volume (отдельный или в каталог машины-хоста)

режим сети не host для docker-compose

веб-интерфейс доступен на порте с номером от 5000

есть конфиг для apache2, настраивающий работу через reverse proxy

необходимые для отладки логи работы приложения доступны через веб-интерфейс

если в системе несколько контейнеров с кодом (например бакенд и фронтенд), то логи всех контейнеров должны собираться на одном из них

есть примитивные интеграционные тесты

в настройках docker-compose для всех контейнеров есть монтирование данных о часовом поясе хост-машины /etc/timezone:/etc/timezone:ro

Плагины для Moodle