id
- уникальный для каждого поста;rubrics
- массив рубрик;text
- текст поста;created_date
- дата создания поста.
- Поиск по тексту поста, возвращает 20 найденных документов, упорядоченных по дате создания, в текстах которых указанный в параметре текст встречается как подстрока:
http://127.0.0.1:5000/api/v1/text_docs/?search=информация&order=asc
Параметр order управляет тем, будет ли упорядочиваться результат по убыванию (desc) или по возрастанию (asc)
- Удаление поста по его id:
http://127.0.0.1:5000/api/v1/text_docs/1104
Для работы с сервисом в режиме отладки вам понадобится установить менеджер пакетов poetry. Таргеты, предназначенные для отладки вы можете посмотреть в Makefile.
Для установки контейнеров сервиса запустите:
make install
После этого нужно немного подождать, чтобы успел подняться контейнер c Elasticsearch. Для проверки Elasticsearch можно запустить ping и посмтреть health:
make es.check
make es.logs
Когда Elasticsearch будет готов, можно создать индекс и Б.Д. командой:
make db.create
Далее заполнить её из post.csv, который нужно разместить в директории /backend_data:
make db.fill
Запустить бэкенд можно так:
make app.run
Проверить логи бэкенда:
app.logs
Остановить контейнеры:
make down
Удалить контейнеры:
make remove.images
Удалить директорию с данными Б.Д. и индекса:
make clean
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
Надо в системе, в которой установлен docker (не в контейнере) увеличить память. Сначала проверим:
more /proc/sys/vm/max_map_count
На экран выводится значение 65530, значит все верно - памяти не достаточно. Для убунту выполняем:
sudo sh -c 'echo "vm.max_map_count = 262144" >> /etc/sysctl.conf'
sudo sysctl -p