Deploying with Koyeb
Serverless platform with git-push deploys, Docker, and global edge with free tier.
PlatformsBeginner
Why
Koyeb offers git-push and Docker deploys with auto HTTPS, global edge, and a free tier. It runs on bare metal for performance and supports auto-restart on crash.
Platform-as-a-Service adoption grew 24% in 2024 as teams shift from VM management to git-push deploys. the cloud infrastructure market reached $330B in 2024, growing 22% year-over-year (Synergy Research), and PaaS layers capture the majority of new workloads.
When
Use Koyeb for free-tier hobby projects and Docker deploys with global edge. Avoid for enterprise — newer platform with fewer features.
How
1. Create — koyeb.com → Create Service → GitHub or Docker
2. Build — auto-detects or specify Dockerfile
3. Env — set environment variables in service config
4. Region — choose closest region or global edge
5. Domain — auto HTTPS, or custom domain
6. Scale — set instance count
7. Logs — koyeb service logs
Example
# koyeb.yaml — service config
services:
- name: myapp
type: web
image: myapp:latest
regions: [fra, sfo, singapore]
env:
- key: DATABASE_URL
value: postgres://...
routes:
- path: /
port: 3000
scale:
min: 1
max: 5
# Deploy via CLI
koyeb service create myapp --docker-image myapp:latest --port 3000
Common Problems
- ⚠Free tier limited — 1 service, 512MB RAM, may not fit production
- ⚠Fewer regions than Fly/Cloudflare — check if your region is supported
- ⚠Configuration drift between environments — use infrastructure-as-code (Terraform/Pulumi) to keep dev/staging/prod identical
Best Practices
- ✓Use Docker for reproducible builds — same image in dev and prod
- ✓Set health check path — Koyeb restarts unhealthy services
- ✓Set up health checks and graceful shutdown — handle SIGTERM to drain in-flight requests before exit