Frequently Asked Questions (FAQ)
Everything you need to know about TurboV's architecture, hosting model, security, and scalability.
General Questions
What is TurboV?
TurboV is a hosted Platform-as-a-Service (PaaS) that manages application and database lifecycles on your own servers. We run the dashboard and control plane; you connect your own VPS or bare-metal instances, and your apps and databases run there. It combines the ease of use of Vercel and Railway with the control and cost efficiency of running on your own servers.
How does TurboV differ from Coolify or Dokku?
- Nothing to Host: Coolify and Dokku are software you install, run, and upgrade yourself. TurboV is a hosted service: we run and update the control plane, and the only TurboV software on your servers is the agent, which updates itself.
- Bidirectional Control-Plane Architecture: Dokku runs entirely on a single server without a central management control plane. TurboV features a modern multi-tenant control plane capable of managing dozens of servers across multiple cloud providers with unified RBAC.
- Zero Inbound Ports: Unlike systems requiring open SSH or agent ports on your host, the TurboV Agent connects outwards over secure WebSockets, keeping your server attack surface minimal.
- Enterprise-Grade Secrets: Uses envelope encryption with per-environment AES-256-GCM Data Encryption Keys.
- Direct-to-Storage Backups: Streams compressed database dumps directly to your S3/R2/MinIO bucket using presigned URLs, avoiding control-plane bottlenecks.
- Database Studio: Includes a built-in schema explorer, paginated table viewer, and raw SQL query runner directly inside the web UI.
Do I need to host TurboV myself?
No. TurboV is a hosted service. Sign up, add your servers, and run the install command on each one. That installs the TurboV agent; there is no dashboard, API, or database for you to run.
Is TurboV free?
TurboV has a free tier. You pay your cloud provider (e.g. Hetzner, DigitalOcean, AWS) for your compute and storage, with no markup from TurboV. TurboV is not currently open source.
Infrastructure & Servers
What operating systems are supported?
Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS, and Debian 11/12 on both x86_64 (AMD64) and arm64 architectures.
Can I connect servers from different cloud providers?
Yes. You can attach servers from any mix of providers (e.g. 2 servers from Hetzner in Germany, 1 AWS EC2 instance in US-East, and an on-premise bare-metal machine) to the same TurboV account and organization.
What happens if the server reboots?
The TurboV Agent is managed as a systemd service (turbov-agent.service) and automatically launches upon boot. Docker containers configured with restart policies (unless-stopped or always) are restored automatically by Docker Engine.
What ports must be open on my server?
Only ports 80 (HTTP) and 443 (HTTPS) for incoming web traffic served by Traefik. Port 22 (SSH) is recommended for emergency host access. The TurboV Agent does not require any open inbound ports.
Deployments & Frameworks
What programming languages and frameworks can I deploy?
Any language that can run inside a Docker container. With Nixpacks auto-detection, TurboV automatically builds:
- Node.js: Next.js, Remix, Astro, Express, Fastify, NestJS, Vite SSR
- Python: FastAPI, Django, Flask, Celery
- Go: Gin, Fiber, Echo, standard library HTTP
- Rust: Actix, Axum, Rocket
- Ruby: Ruby on Rails, Sinatra
- PHP: Laravel, Symfony
- Static Sites: HTML, CSS, client-side React/Vue/Svelte SPAs
Do I need to write a Dockerfile?
No. If your repository does not contain a Dockerfile, TurboV automatically uses Nixpacks to analyze your package manifests (e.g. package.json, go.mod, requirements.txt, Cargo.toml) and assemble an optimized multi-layer Docker image. If a Dockerfile exists, TurboV respects it.
How does zero-downtime deployment work?
TurboV utilizes a blue-green strategy orchestrated with Traefik:
- The new container is built and started on an isolated internal port.
- The agent polls the container's health check endpoint until it responds with HTTP 200.
- The agent writes a hot-reloaded configuration to
/var/lib/turbov/traefik/dynamic/. - Traefik immediately shifts traffic to the new container without dropping active connections.
- The old container is drained and terminated.
Databases & Storage
Which managed databases are supported?
- PostgreSQL:
postgres:16-alpine - MySQL:
mysql:8 - Redis:
redis:7-alpine - MongoDB:
mongo:7
Can I connect to my database externally?
Yes. Databases default to private internal network resolution on the turbov Docker bridge. You can optionally enable external access in the database settings, exposing a port or routing through Traefik with TLS passthrough.
How are backups stored?
You can configure external S3-compatible storage providers:
- AWS S3
- Cloudflare R2
- MinIO (Self-hosted)
- Local Server Storage
Backups are streamed directly from the agent to your bucket using presigned S3 URLs.
Security
How are environment variables encrypted?
All environment variables and database passwords are encrypted at rest using envelope encryption:
- A central Key Management Service manages the root Key Encryption Key (KEK).
- Each environment generates an isolated 256-bit Data Encryption Key (DEK).
- Secrets are encrypted using AES-256-GCM.
- Secrets are only injected into running containers at runtime and are never baked into Docker images.