9e8f1bbeed
Dashboard / frontend (push) Failing after 0s
Dashboard / api (push) Failing after 0s
Lint PowerShell / powershell-lint (ubuntu-latest) (push) Failing after 1s
Python Lint / Lint Python with Ruff (push) Failing after 1s
ShellCheck / Lint shell scripts (push) Failing after 1s
Matrix Smoke / linux-smoke (push) Failing after 1s
Matrix Smoke / distro: cachyos (push) Failing after 15s
Matrix Smoke / distro: linux-mint-21.3 (push) Failing after 15s
Matrix Smoke / distro: debian-12 (push) Failing after 5m21s
Matrix Smoke / distro: fedora-41 (push) Failing after 4m56s
Matrix Smoke / distro: ubuntu-24.04 (push) Failing after 2m13s
Matrix Smoke / distro: rocky-9 (push) Failing after 10m39s
Matrix Smoke / distro: manjaro (push) Failing after 12m11s
Matrix Smoke / distro: opensuse-tw (push) Failing after 11m53s
Matrix Smoke / distro: archlinux (push) Failing after 20m3s
Matrix Smoke / distro: ubuntu-22.04 (push) Failing after 13m49s
Validate .env Schema / tier-1-env-validation (push) Successful in 52s
Validate .env Schema / tier-2-env-validation (push) Successful in 44s
Validate .env Schema / tier-3-env-validation (push) Successful in 52s
Validate .env Schema / tier-4-env-validation (push) Successful in 51s
Validate Extensions Catalog / Check catalog is up-to-date (push) Failing after 9m47s
Secret Scan / Scan for secrets (push) Failing after 21m4s
Validate Docker Compose / Validate Docker Compose files (push) Has been cancelled
Python Type Check / Type check with mypy (push) Has been cancelled
Validate .env Schema / tier-0-env-validation (push) Has been cancelled
Test Linux / integration-smoke (push) Has been cancelled
Lint PowerShell / powershell-lint (windows-latest) (push) Has been cancelled
Matrix Smoke / macos-smoke (push) Has been cancelled
Qdrant
Vector database for semantic search and RAG in ODS
Overview
Qdrant is a high-performance vector database that stores and searches embeddings for Retrieval-Augmented Generation (RAG) workflows. It enables semantic similarity search across your local documents, letting LLMs retrieve relevant context before answering questions.
Features
- Vector storage: Persist high-dimensional embeddings with HNSW indexing for fast nearest-neighbor search
- Collection management: Organize vectors into named collections with configurable distance metrics (cosine, dot product, Euclidean)
- Filtered search: Combine semantic search with structured metadata filters
- Snapshots: Create and restore point-in-time backups of your collections
- REST + gRPC API: Full API access over HTTP and gRPC for high-throughput clients
- Persistence: All data survives container restarts via bind-mounted storage
Configuration
Environment variables (set in .env):
| Variable | Default | Description |
|---|---|---|
QDRANT_PORT |
6333 | External HTTP REST API port |
QDRANT_GRPC_PORT |
6334 | External gRPC API port |
API Endpoints
| Endpoint | Method | Description |
|---|---|---|
GET / |
GET | Health check / root info |
GET /collections |
GET | List all collections |
PUT /collections/{name} |
PUT | Create a collection |
DELETE /collections/{name} |
DELETE | Delete a collection |
PUT /collections/{name}/points |
PUT | Insert/update vectors |
POST /collections/{name}/points/search |
POST | Similarity search |
GET /collections/{name}/points/{id} |
GET | Get point by ID |
GET /dashboard |
GET | Built-in web dashboard |
Full API docs are available at http://localhost:6333/dashboard when the service is running.
Architecture
┌──────────────┐ REST :6333 ┌──────────────┐
│ Open-WebUI │──────────────────▶│ Qdrant │
│ Perplexica │ gRPC :6334 │ (Vector DB) │
│ Your App │──────────────────▶│ │
└──────────────┘ └──────┬───────┘
│
┌──────▼───────┐
│ ./data/qdrant│
│ (storage) │
└──────────────┘
Qdrant works alongside the embeddings service: the embeddings service converts text to vectors, and Qdrant stores and retrieves them.
Files
manifest.yaml— Service metadata (port, health endpoint, GPU backends)compose.yaml— Container definition (image, volumes, ports, healthcheck)
Troubleshooting
Qdrant not starting:
docker compose ps ods-qdrant
docker compose logs ods-qdrant
Cannot connect on port 6333:
- Check
QDRANT_PORTin.envis not in use by another service - Verify the container is healthy:
docker compose ps ods-qdrant
Data lost after restart:
- Ensure
./data/qdrantdirectory exists and has correct permissions - Check volume mount in compose.yaml
Collection errors:
# List collections via REST API
curl http://localhost:6333/collections
# Check Qdrant version
curl http://localhost:6333/