Self-Hosting

Deploy Sim on your own infrastructure with Docker or Kubernetes.

Set Up with Cursor

Requirements

ResourceSmallStandardProduction
CPU2 cores4 cores8+ cores
RAM12 GB16 GB32+ GB
Storage20 GB SSD50 GB SSD100+ GB SSD
Docker20.10+20.10+Latest

Small: Development, testing, single user (1-5 users) Standard: Teams (5-50 users), moderate workloads Production: Large teams (50+ users), high availability, heavy workflow execution

Resource requirements are driven by workflow execution (isolated-vm sandboxing), file processing (in-memory document parsing), and vector operations (pgvector). Memory is typically the constraining factor rather than CPU — both the Helm chart and the compose file request 4 Gi for the app and cap it at 8 Gi.

Quick Start

git clone https://github.com/simstudioai/sim.git && cd sim

cat > .env << EOF
BETTER_AUTH_SECRET=$(openssl rand -hex 32)
ENCRYPTION_KEY=$(openssl rand -hex 32)
INTERNAL_API_SECRET=$(openssl rand -hex 32)
CRON_SECRET=$(openssl rand -hex 32)
EOF

docker compose -f docker-compose.prod.yml up -d

Open http://localhost:3000

The .env step is not optional — the compose file refuses to start without the first three rather than booting with empty values. CRON_SECRET is what the scheduler uses; without it the cron service exits with instructions and everything else still runs. See Docker for the full production setup.

Deployment Options

Which one to pick

Both deploy the same feature set. Docker Compose is the fastest way to evaluate Sim and is fine for a single-node team install; Kubernetes is the path for high availability and managed secrets.

CapabilityDocker ComposeKubernetes (Helm)
App, realtime, migrations, Postgres, RedisYesYes
Scheduled workflows and polling triggersYes — cron serviceYes — 18 CronJobs
Horizontal scaling / HANo (single node)Yes (replicaCount, HPA, PDB)
Managed secrets (Vault, ESO, cloud KMS)Manual .envYes
Network policy, Pod Security StandardsHost-level onlyYes
PII redaction, OpenTelemetry collectorNot bundledOptional components

The remaining differences are inherent to the platform — Compose has no analogue of a HorizontalPodAutoscaler or a PodDisruptionBudget. Application behavior is the same on both.

Where to go next

The sidebar covers the rest: architecture, email, Redis, authentication, background jobs, networking, security, scaling, observability, and upgrades.

Enterprise Features

Organizations, SSO, permission groups, audit logs, whitelabeling, session policies, data retention, and data drains all run on a self-hosted deployment with no billing or subscription. Turn the set on with:

ENTERPRISE_ENABLED=true
NEXT_PUBLIC_ENTERPRISE_ENABLED=true

Your deployment also needs an organization model for most of them to apply. The self-hosted enterprise guide covers both patterns, the per-feature flags, and troubleshooting.

External dependencies to plan for

Sim is self-contained for the core editor and execution engine. A few features reach outside the deployment:

FeatureRequiresNotes
Knowledge basesAn OpenAI, Azure OpenAI, or Gemini API keyEmbeddings are generated by a hosted provider, selected with KB_EMBEDDING_MODEL (text-embedding-3-small by default). There is no local embedding backend — knowledge bases are unavailable without one of these keys.
Agent blocksAn API key for at least one model providerOr a self-hosted OpenAI-compatible endpoint: Ollama, vLLM, or LiteLLM.
Chat moduleCOPILOT_API_KEY from sim.aiSet NEXT_PUBLIC_CHAT_DISABLED=true to hide the module instead.
IntegrationsYour own OAuth app per serviceSee Integrations & OAuth.
Remote Function / Pi executionOptional E2B or Daytona keyWithout one, JavaScript Function code that has no import or require still runs in the in-process isolated VM. Python, Shell, JavaScript with external imports, custom Function Sandboxes, and Pi require a configured remote provider. See Security.

Common Questions

At minimum you need 2 CPU cores, 12 GB RAM, 20 GB SSD storage, and Docker 20.10 or later. Memory is typically the constraining factor due to workflow execution (isolated-vm sandboxing), file processing, and vector operations (pgvector).
Three secrets are required: BETTER_AUTH_SECRET (authentication), ENCRYPTION_KEY (data encryption), and INTERNAL_API_SECRET (service-to-service auth). Generate each with openssl rand -hex 32. You also need to set NEXT_PUBLIC_APP_URL and BETTER_AUTH_URL to your domain.
Yes. Sim supports Ollama for local model inference. Use docker-compose.ollama.yml instead of docker-compose.prod.yml. It offers both GPU (with NVIDIA support) and CPU-only profiles, and automatically pulls gemma3:4b as a starter model.

On this page