# Flask demo api Demo api with Flask as backend and Redis as NoSql DB [![Static Badge](https://img.shields.io/badge/pi3c_nao-green?style=for-the-badge&logo=telegram&label=Telegram)](https://t.me/pi3c_nao) [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit) [![Packaged with Poetry][poetry-badge]](https://python-poetry.org/) ## Задание Создать docker-compose.yml разворачивающий приложение на python с простой реализацией REST API. Решение должно состоять из двух контейнеров: а) Любая NoSQL DB. б) Приложение на python, с использованием Flask, которое слушает на порту 8080 и принимает только методы GET, POST, PUT. в) Создаем значение ключ=значение, изменяем ключ=новое_значение, читаем значение ключа. г) Вновь созданные объекты должны создаваться, изменяться и читаться из NoSQL DB. ## Описание API - GET: требует наличие аргумента key: http://localhost:8080/?key=blablabla - POST, PUT & DELETE: принимают данные запроса в json формате { "key": "your_key", "val": "your_val" } ## Установка - Клонируем репозиторий `git clone https://git.pi3c.ru/pi3c/flask-demo-api.git` - Запуск апи первый запуск после установки или обновления `docker-compose -f compose-app.yml up --build` последующие запуски `docker-compose -f compose-app.yml up` - Запуск тестов первый запуск после установки или обновления `docker-compose -f compose-tests.yml up --build` последующие запуски `docker-compose -f compose-tests.yml up` - Для остановки запущенных контейнеров `-c` `docker-compose -f compose-app.yml down` or `docker-compose -f compose-tests.yml down`