Self-hosted boto3-compatible AWS Rekognition Faces API - Helm chart (pgvector)
41
Self-hosted, boto3-compatible AWS Rekognition Faces API. Detect, index, compare and search faces using YuNet (detection) + SFace (128-d embeddings), backed by PostgreSQL/pgvector for similarity search, with a built-in HTMX playground UI.
It speaks the AWS Rekognition JSON-1.1 protocol, so an unmodified boto3 client works against it by swapping endpoint_url — no AWS account, no per-call billing, your images never leave your infrastructure.
This repository hosts the Helm chart (OCI artifact). The application container image is published separately.
helm install rekog oci://registry-1.docker.io/eslazarev/open-recognition --version 0.1.0
This deploys the API as a Deployment + Service and, by default, a bundled pgvector StatefulSet for storage. To use an external managed Postgres instead:
helm install rekog oci://registry-1.docker.io/eslazarev/open-recognition --version 0.1.0 \
--set postgresql.enabled=false \
--set externalDatabase.url="postgresql://user:pass@host:5432/open_recognition"
The external database must have the pgvector extension available — the app runs CREATE EXTENSION IF NOT EXISTS vector on startup.
import boto3
rekog = boto3.client(
"rekognition",
endpoint_url="http://localhost:8080", # or your Ingress URL
region_name="us-east-1",
aws_access_key_id="x", aws_secret_access_key="x",
)
rekog.create_collection(CollectionId="people")
rekog.index_faces(CollectionId="people", Image={"Bytes": open("face.jpg", "rb").read()})
The HTMX playground is served at /ui, OpenAPI docs at /docs.
| Key | Default | Description |
|---|---|---|
image.repository | eslazarev/open-recognition | Application container image |
postgresql.enabled | true | Deploy a bundled pgvector StatefulSet |
externalDatabase.url | "" | DSN used when postgresql.enabled=false |
ingress.enabled | false | Expose via Ingress |
service.type | ClusterIP | Service type |
See the chart values.yaml for the full list.
Content type
Helm
Digest
sha256:e5abf37ae…
Size
7.9 kB
Last updated
4 months ago
helm pull oci://registry-1.docker.io/eslazarev/open-recognition --version 0.1.0