Headless CMS for Garmeres, built on Strapi 5. Provides content APIs consumed by the website.
- Database: SQLite, backed up to S3 on a schedule
- Media uploads: Hetzner Object Storage (S3-compatible)
- Runtime: Node 20, deployed as a container on Kubernetes
cp .env.example .env
# Fill in S3_ACCESS_KEY_ID and S3_SECRET_ACCESS_KEY
npm install
npm run developAdmin panel: http://localhost:1337/admin
See .env.example. The S3 variables are required for media uploads to work.
The image is automatically built and pushed to ghcr.io/garmeres/balve-strapi:latest on every push to main.
Deployed to Kubernetes via Helm chart in balve-k8s. ArgoCD handles continuous delivery.