25 lines
1.7 KiB
Markdown
25 lines
1.7 KiB
Markdown
# Инициализация Qdrant при старте
|
||
|
||
При старте Docker-стека контейнер `qdrant-init` ждёт доступности Qdrant, проверяет наличие коллекции `chapter_analyses` (size=1024, Cosine) и создаёт её при отсутствии.
|
||
|
||
## Переменные окружения
|
||
|
||
| Переменная | По умолчанию | Описание |
|
||
|------------|--------------|----------|
|
||
| `QDRANT_URL` | `http://qdrant:6333` | URL Qdrant (внутри сети — имя сервиса `qdrant`) |
|
||
| `QDRANT_COLLECTION_CHAPTER_ANALYSES` | `chapter_analyses` | Имя коллекции для анализов глав |
|
||
| `QDRANT_VECTOR_SIZE` | `1024` | Размерность вектора (bge-m3) |
|
||
| `QDRANT_INIT_DELAY` | `15` | Пауза (сек) перед первой попыткой подключения — даёт Qdrant время открыть порт |
|
||
|
||
## Подключение к docker-compose
|
||
|
||
В `docker-compose.yml` сервис `qdrant-init` использует образ `python:3.11-alpine` и монтирует `entrypoint.py` (без отдельного Dockerfile). Запускается после healthcheck Qdrant, выполняет скрипт и завершается (restart: "no"). Другие сервисы могут зависеть от него через `depends_on: qdrant-init`, если нужно гарантировать наличие коллекции перед работой.
|
||
|
||
## Локальный запуск (без Docker)
|
||
|
||
Для проверки при работающем Qdrant на localhost:
|
||
|
||
```bash
|
||
QDRANT_URL=http://localhost:6333 python3 entrypoint.py
|
||
```
|