Quickstart
Test CloudBroker in about 5 minutes. You need Docker and Docker Compose.
1. Clone and configure
git clone https://github.com/braghettos/cloudbroker
cd cloudbroker
cp .env.example .env
Default .env works for local Docker. No API keys required for development.
2. Start the stack
make up
make migrate
Starts API + PostgreSQL. Migrations run automatically. API is at http://localhost:8000.
3. Ingest pricing data
Ingest at least one provider. Azure works without credentials (public API):
make ingest-azure
Or use Hetzner (needs HETZNER_API_TOKEN in .env):
make ingest-hetzner
For all providers: make ingest-all (requires credentials for each).
For TCO-aware recommendations, also run: make ingest-egress (or make ingest-all-costs for full cost rates).
4. Test the recommendation API
curl -X POST http://localhost:8000/api/recommendations \
-H "Content-Type: application/json" \
-d '{"min_vcpu": 2, "min_ram_gb": 4, "arch": "x86_64", "region_constraint": "EU", "max_price_eur_per_hour": 0.5, "limit": 5}'
You should get a JSON response with a ranked list of instance types.
Optional TCO: add "data_source_provider": "azure", "data_source_region": "westeurope", "estimated_egress_gb_per_hour": 1.0 for total cost breakdown in explain.
5. Explore the API
- Swagger UI — http://localhost:8000/docs
- Health —
curl http://localhost:8000/health - Providers —
curl http://localhost:8000/api/providers