57 lines
2.2 KiB
Markdown
57 lines
2.2 KiB
Markdown
# 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)
|
||
|
||
|
||
## Задание
|
||
|
||
Создать 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`
|
||
|
||
- Для остановки запущенных контейнеров
|
||
`<CTRL>-c`
|
||
`docker-compose -f compose-app.yml down`
|
||
or
|
||
`docker-compose -f compose-tests.yml down`
|