Пересдача экзамена № 2
Формат проведения защиты работы
Работа выполняется заочно и все результаты отправляются в виде архива на почту преподавателю andrey@crafted.su
. Тема письма должна быть следующей: Пересдача экзамена UNIX ФАМИЛИЯ
.
Загруженные результаты проверяются преподавателем и на их основании выставляется оценка по пересдаче.
Технические требования к реализации
Вы должны предоставить архив, включающий в себя следующие элементы:
- Скрипт или скрипты на языке Bash, Ruby или Python, решающий поставленную задачу. Bash-скрипты желательно проверить с помощью приложения
shellcheck
. - Архив или каталог с исходными текстами веб-приложения.
- Файл
readme.txt
, в котором описывается предназначение каждого из файлов, а также способы их запуска. При отсутствии данного файла работа считается невыполненной.
Все файлы должны быть реализованы студентом самостоятельно.
Задача
Реализуйте систему автоматической установки Ruby-приложения в рамках чистового Debian-окружения. В качестве целевого окружения будем рассматривать Debian 10, Buster. Запуск скрипта будет производиться с привилегиями суперпользователя.
Для разворачивания можно использовать свою лабораторную работу по языку программирования Ruby или воспользоваться скелетом веб-приложения, который можно скачать по ссылке: reprie-1-task.7z
.
После выполнения развёртывания должны произойти следущие действия:
- В системе установлен интерпретатор языка Ruby и все зависимости, которые необходимы для запуска приложения.
- В системе установлен веб-серве Nginx, настроенный в режиме обратного проксирования динамических запросов к Ruby-приложению.
- Статические данные Ruby-приложения предоставляются веб-сервеом Nginx напрямую с жёсткого диска.
- Ruby-приложение запускается под управлением системы инициализации SystemD.