| .zerops-recipe | ||
| README.md | ||
| zerops.yml | ||
Self-Hosted Convex on Zerops
Run the open-source Convex backend — reactive database, serverless TypeScript functions, cron, file storage — and its dashboard on your own Zerops project. No Docker: the official precompiled binary runs directly on a Zerops runtime, with the database, storage, TLS and networking fully managed.
This repo is a Zerops recipe. The platform reads only the .zerops-recipe/
folder; the build/run pipeline for each service lives in zerops.yml.
Deploy
Open the recipe on Zerops and pick an environment:
- Stage (SQLite, single LIGHT container) — dev / preview / demo https://app.zerops.io/recipes/detail?github=https://github.com/Samyazz/convex-on-zerops&yaml=stage
- Small Production (managed single-node PostgreSQL) — durable, budget production https://app.zerops.io/recipes/detail?github=https://github.com/Samyazz/convex-on-zerops&yaml=small-production
- HA Production (3-node PostgreSQL cluster + failover) — customer-facing production https://app.zerops.io/recipes/detail?github=https://github.com/Samyazz/convex-on-zerops&yaml=ha-production
After deploy: open the backend service, generate an admin key with
./convex-local-backend keygen admin-key --instance-name "$INSTANCE_NAME" --instance-secret "$INSTANCE_SECRET",
then open the dashboard service URL and log in with the backend URL + that key.
Full first-run steps are on the recipe's Get started tab.
What's inside
.zerops-recipe/
README.md recipe-level content (name, intro, description, features, …)
cover.png hero image
0 — Stage/import.yaml SQLite, LIGHT core
1 — Small Production/import.yaml managed PostgreSQL (single), SERIOUS core
2 — HA Production/import.yaml managed PostgreSQL (HA), SERIOUS core
zerops.yml build & run setups for backend + dashboard
Convex is single-writer, so the backend is pinned to one container in every tier;
high availability lives in the database and storage layers. To upgrade Convex, bump
REL in zerops.yml and redeploy.