Skip to main content

Qdrant

What is Qdrant?

Qdrant is a high-performance vector database for storing and querying embeddings, used for semantic search and RAG (retrieval-augmented generation) pipelines. It exposes both a REST API and a gRPC API, plus a built-in web dashboard.

Start Qdrant

docker compose up -d qdrant

Stop Qdrant

docker compose stop qdrant

This stops the container without deleting your collections (kept in the qdrant Docker volume). To remove the container: docker compose rm -f qdrant.

Configuration

All settings live in qdrant/defaults.env and can be overridden by adding the same line to your own .env:

VariableDefaultWhat it does
QDRANT_VERSIONlatestImage tag from the qdrant/qdrant Docker Hub image.
QDRANT_HOST_PORT6333Host-side port for the REST API (container port 6333).
QDRANT_GRPC_PORT6334Host-side port for the gRPC API (container port 6334).

Collections persist in the qdrant named Docker volume at /qdrant/storage across restarts.

Connect

REST API is at http://localhost:6333, health check /healthz, built-in dashboard at /dashboard. gRPC is on 6334. From another container, use http://qdrant:6333 (or qdrant:6334 for gRPC).

Common issues

  • Dashboard shows no collections. Collections are created via the API, not automatically. Create one first, either through the dashboard's "create collection" flow or a PUT /collections/<name> call.
  • gRPC client can't connect. Confirm you're using port 6334, not the REST port 6333, gRPC and REST are separate ports on this image.
  • Port already in use on your host. Change QDRANT_HOST_PORT or QDRANT_GRPC_PORT in .env and restart: docker compose up -d qdrant.
  • App can't connect but the container is running. Use the container name qdrant, not localhost, from inside another container.

Comparing vector databases? See Weaviate and Chroma. New to Laradock? Start with Getting Started.