По аналогии с практикой из лекции создайте свой docker image с http сервером nginx. Замените страницу приветсвия Nginx на своё (измените текст приветствия на той же странице).
Подсказки:
В официальном образе nginx стандартный путь к статичным файлам `/usr/share/nginx/html`.На проверку присылается GitHub репозиторий с Dockerfile и статичными файлами для него.
Для пользовательского html можно использовать пример в каталоге с ДЗ.
Создайте контейнер для REST API сервера из решения ДЗ по теме «Flask»
- Создайте типовой Docker-файл для запуска Python-приложения
- Проверьте конфигурацию Flask на использование переменных окружения (environment)
- Проверьте Docker-файл на передачу переменных окружения в Flask
- Docker-контейнер запускается с приложением Flask
Подсказки:
1. Хорошим тоном будет пример команд с последовательным запуском контейнеров и объединением их в сеть для БД и Flask. 2. В качестве простого решения можно подключаться к БД на локальной хост машине.- Приложите в репозиторий Dockerfile и файлы приложения.
- В Readme.md описать типовые команды для запуска контейнера c backend сервером.
Создать конфигурацию для последовательного запуска 3-х контейнеров: flask, postgres, nginx.
Контейнеры объединяются в сеть, которые работают в связке:
- Nginx работает в качестве proxy-http для пересылки динамических запросов к Flask или возвращая статические html файлы.
- PostgreSQL запускается до Flask, т.к. rest api может зависетьот БД.
- Flask запускается через Gunicorn, отвечая http клиенту через Nginx.
В Readme.md перечислить команды для запуска или описать конфигурацию docker-compose.yml для запуска одной командой.
Полезные материалы для Задания 3:
- Введение в docker-compose
- https://the-bosha.ru/2017/01/04/zapusk-flask-prilozheniia-c-uwsgi-virtualenv-i-nginx/
- https://habr.com/ru/post/352266/
Темы Настройка Gunicorn и SupervisorиНастройка Nginx - https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-gunicorn-and-nginx-on-ubuntu-18-04-ru