One-Click BrainPredict on Hetzner Cloud
Deploy BrainPredict on Hetzner Cloud (Frankfurt or Nuremberg) using a single Terraform command. All data stays in the EU. No DevOps team needed.
Choose your server tier
| Tier | CPU | RAM | Storage | Hetzner price | Platforms | Best for |
|---|---|---|---|---|---|---|
| Starter (cx32) | 8 vCPU | 16 GB | 500 GB SSD | ~€22/mo | Up to 10 platforms | SME / Startup |
| Professional (cx42)Recommended | 16 vCPU | 32 GB | 500 GB SSD | ~€48/mo | All 19 platforms | Mid-market |
| Enterprise (cx52) | 32 vCPU | 64 GB | 500 GB SSD | ~€96/mo | All 19 + HA ready | Enterprise |
* Hetzner infrastructure cost billed separately. BrainPredict platform subscription required.
Deployment Guide — 6 Steps
Install Terraform
brew install terraform # or apt install terraform
Requires Terraform ≥ 1.7.0
Get your Hetzner API token
export HCLOUD_TOKEN="your-token-from-hetzner-console"
Create at console.hetzner.cloud → Projects → API Tokens
Clone the template
git clone https://github.com/brainpredict-ai/hetzner-terraform cd hetzner-terraform
Or download infrastructure/hetzner/ from your BrainPredict portal
Configure your deployment
cat > terraform.tfvars <<EOF hcloud_token = "$HCLOUD_TOKEN" brainpredict_license_key = "bp_live_..." admin_email = "you@company.com" topology = "single" # or "ha" for Active/Active server_type = "cx32" # 8vCPU / 16GB RAM location = "fsn1" # Frankfurt, Germany EOF
Topology "ha" provisions 2 nodes + load balancer in separate EU datacenters
Deploy
terraform init && terraform plan && terraform apply
Infrastructure ready in ~2 minutes. BrainPredict installed in ~35 minutes via cloud-init.
Activate your license
# Open: https://your-ip:3001 # Enter your BrainPredict license key # Create admin user # Run Sentinel calibration (48h)
Point your DNS A record to the IP shown in terraform output
High Availability (Topology B)
Set topology = "ha" to deploy two nodes in separate Hetzner datacenters (e.g. Frankfurt + Nuremberg) with an automatic load balancer. Intelligence Bus uses Raft consensus — 0 RPO, <1s RTO. Both nodes are in the EU.