Documentation Index
Fetch the complete documentation index at: https://docs.tesslate.com/llms.txt
Use this file to discover all available pages before exploring further.

Overview
OpenSail has three supported deployment paths. This page summarizes what each path is good for and links to the detailed walkthroughs. For the install-path decision matrix, see the self-hosting quickstart.Prefer a managed service? tesslate.com runs OpenSail for you with zero setup.
Pick your path
Docker Compose
Single-server install with Postgres, Redis, Traefik, the orchestrator, and the app in Compose. Best for dev laptops and single-VM deployments.
Kubernetes (Minikube)
Full Kubernetes pipeline on your own machine: per-project namespaces, btrfs CSI, Volume Hub, snapshots. The staging ground before production.
AWS EKS
Production deployment via Terraform. EKS, ECR, managed Postgres, S3-backed CAS, wildcard TLS, and Cloudflare DNS.
What each path gives you
| Capability | Docker | Minikube | AWS EKS |
|---|---|---|---|
| Orchestrator + agent + app | Yes | Yes | Yes |
| Postgres | In-cluster | In-cluster | RDS |
| Redis | In-cluster | In-cluster | ElastiCache |
| LiteLLM gateway | External or local | External | External |
| Per-project namespaces | No | Yes | Yes |
| NetworkPolicy isolation | No | Yes | Yes |
| btrfs CSI + Volume Hub | No | Yes | Yes |
| CAS bundles on S3 | No | MinIO | S3 |
| Snapshot timeline (5 per project) | No | Yes | Yes |
| Hibernation with restore | No | Yes | Yes |
| Wildcard TLS | Traefik + LE | HTTP only | cert-manager + Cloudflare |
| Horizontal scaling | No | Demo only | Yes |
Overview of each path
- Docker Compose
- Kubernetes (Minikube)
- AWS EKS (production)
The Compose stack brings up every service on a single host:
| Service | Purpose |
|---|---|
orchestrator | FastAPI backend |
frontend (dev) | Vite + React |
postgres | Database |
redis | Task queue + pub/sub |
traefik | *.localhost routing (dev) or Let’s Encrypt (prod) |
worker | ARQ agent worker |
DEPLOYMENT_MODE=docker selects DockerComposeOrchestrator, which provisions per-project containers from .tesslate/config.json and wires them into the Traefik network.Start here: Docker setup guide.Shared operational surface
Regardless of path:- The orchestrator reads config from environment variables. See Configuration for the full reference.
- Agents run via the
tesslate-agentpackage (packages/tesslate-agent/), either inline (desktop, Docker) or under an ARQ worker (K8s). - Project volumes are provisioned through
orchestrator/app/services/volume_manager.py, which talks to the Volume Hub on Kubernetes or the local filesystem on Docker and desktop. - Authentication and RBAC are consistent across paths. See Authentication.
Next steps
Docker setup
Fastest path to a running OpenSail.
Kubernetes on Minikube
Full K8s locally to validate the production path.
AWS production
Terraform, EKS, RDS, S3, wildcard TLS.
Configuration
Env variable reference.