Hardened qdrant database
156
A minimal, secure, and multi-architecture Docker image for Qdrant vector search engine built on top of a hardened scratch container.
scratch base with extracted dynamic glibc dependencies.sh, ash) are removed to prevent arbitrary shell executions.linux/amd64 and linux/arm64.6333), gRPC (6334), and Cluster/P2P (6335).Build locally using Docker CLI:
docker build -t hmtanbir/qdrant:latest .
To build for a specific Qdrant version:
docker build --build-arg QDRANT_VERSION=1.19.0 -t hmtanbir/qdrant:1.19.0 .
To build and push multi-architecture images (amd64 and arm64):
docker buildx build \
--platform linux/amd64,linux/arm64 \
-t hmtanbir/qdrant:latest \
--push .
docker run -d \
--name qdrant \
-p 6333:6333 \
-p 6334:6334 \
-v qdrant_storage:/qdrant/storage \
-v qdrant_snapshots:/qdrant/snapshots \
hmtanbir/qdrant:latest
Start the service with docker-compose:
docker compose up -d
Check status and logs:
# View container status
docker compose ps
# Follow logs
docker compose logs -f
Stop the service:
docker compose down
| Port | Protocol | Purpose |
|---|---|---|
6333 | HTTP | REST API & Web Dashboard (http://localhost:6333/dashboard) |
6334 | gRPC | High-performance gRPC API |
6335 | TCP | Distributed cluster & P2P communication |
| Variable | Default | Description |
|---|---|---|
QDRANT__SERVICE__HTTP_PORT | 6333 | HTTP API port |
QDRANT__SERVICE__GRPC_PORT | 6334 | gRPC API port |
QDRANT__SERVICE__API_KEY | (optional) | Set to enable API Key authentication |
QDRANT__LOG_LEVEL | INFO | Logging level (DEBUG, INFO, WARN, ERROR) |
RUN_MODE | production | Runtime mode |
Verify that Qdrant is running:
# Check health status
curl http://localhost:6333/healthz
# Check cluster info / version
curl http://localhost:6333/
Access the Web Dashboard in your browser at: http://localhost:6333/dashboard
Content type
Image
Digest
sha256:65a0f785e…
Size
36.3 MB
Last updated
28 days ago
docker pull hmtanbir/qdrant