Point compose to remote Elasticsearch and Qdrant
This commit is contained in:
28
README.md
28
README.md
@@ -86,25 +86,21 @@ Visit <http://localhost:8080/> and you’ll see a barebones UI that:
|
||||
Feel free to expand on this scaffold—add proper logging, schedule transcript
|
||||
updates, or flesh out the UI—once you’re happy with the baseline behaviour.
|
||||
|
||||
## Run with Docker Compose
|
||||
## Run with Docker Compose (App Only; Remote ES/Qdrant)
|
||||
|
||||
A quick single-node stack (app + Elasticsearch + Qdrant) is included:
|
||||
The provided compose file builds/runs only the Flask app and expects **remote** Elasticsearch/Qdrant endpoints. Supply them via environment variables (directly or a `.env` alongside `docker-compose.yml`):
|
||||
|
||||
```bash
|
||||
docker compose build
|
||||
docker compose up
|
||||
ELASTIC_URL=https://your-es-host:9200 \
|
||||
QDRANT_URL=https://your-qdrant-host:6333 \
|
||||
docker compose up --build
|
||||
```
|
||||
|
||||
Services:
|
||||
- **app** (port 8080): Flask UI/API, embeds queries on demand (downloads the model on first run).
|
||||
- **elasticsearch** (port 9200): single node, security disabled for local use.
|
||||
- **qdrant** (port 6333): vector index used by `/vector-search`.
|
||||
Other tunables (defaults shown in compose):
|
||||
- `ELASTIC_INDEX` (default `this_little_corner_py`)
|
||||
- `ELASTIC_USERNAME` / `ELASTIC_PASSWORD` or `ELASTIC_API_KEY`
|
||||
- `ELASTIC_VERIFY_CERTS` (set to `1` for real TLS verification)
|
||||
- `QDRANT_COLLECTION` (default `tlc-captions-full`)
|
||||
- `QDRANT_VECTOR_NAME` / `QDRANT_VECTOR_SIZE` / `QDRANT_EMBED_MODEL`
|
||||
|
||||
Key environment wiring (see `docker-compose.yml` for defaults):
|
||||
- `ELASTIC_URL=http://elasticsearch:9200`
|
||||
- `ELASTIC_INDEX=this_little_corner_py`
|
||||
- `QDRANT_URL=http://qdrant:6333`
|
||||
- `QDRANT_COLLECTION=tlc-captions-full`
|
||||
- `LOCAL_DATA_DIR=/app/data/video_metadata` (mounted from `./data`)
|
||||
|
||||
Mount `./data` (read-only) if you want local fallbacks for metrics; otherwise the app relies entirely on Elasticsearch/Qdrant. Stop the stack with `docker compose down` (add `-v` to clear ES/Qdrant volumes).
|
||||
Port 8080 on the host is forwarded to the app. Mount `./data` (read-only) if you want local fallbacks for metrics (`LOCAL_DATA_DIR=/app/data/video_metadata`); otherwise the app will rely purely on the remote backends. Stop the container with `docker compose down`.
|
||||
|
||||
Reference in New Issue
Block a user