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 UIhttp://localhost:8000/docs
  • Healthcurl http://localhost:8000/health
  • Providerscurl http://localhost:8000/api/providers