Skip to main content
This guide is for self-hosted deployments. Using the managed platform? You don’t need Docker — see Connect to SenseLab.

Overview

SenseLab ships with a production-ready Docker image and a Helm chart for Kubernetes. You can go from zero to a running SenseLab server in one command — no Python installation required. The Docker image includes:
  • The SenseLab HTTP API server (FastAPI)
  • All storage adapters (filesystem, Postgres, S3)
  • The MCP server
  • The Memory Cortex (streaming digest compiler)
  • Health checks and graceful shutdown

Docker

Quick Start

Build Locally

Configuration

All environment variables work inside the container. Common ones:

Docker Compose

For local development, docker-compose.yml brings up SenseLab + Postgres (with pgvector) in one command:
This starts: The compose file lives in the repo root:
The Cortex worker listens for memory write events via Postgres LISTEN/NOTIFY and continuously compiles knowledge digests. It runs as a separate container for independent scaling. For simple single-instance deployments, you can skip the separate container and run the Cortex embedded in the HTTP server:

Verify

Connecting the Dashboard (Pro)

If you have access to the SenseLab Pro dashboard, point it at the running Docker Compose stack by setting two environment variables in dashboard/.env.local:
Both are required. NEXT_PUBLIC_ is a Next.js convention that exposes the variable to browser-side code. After setting them, restart the dashboard dev server (npm run dev) for the changes to take effect.

Kubernetes with Helm

Install

Helm Values

Ingress

To expose SenseLab externally:

Autoscaling

The Helm chart includes an optional HPA:
When scaling to multiple replicas with the filesystem backend, each replica has its own isolated storage. Use Postgres or S3 for shared state across replicas.

Connecting MCP to Docker

Point your MCP config at the Dockerized HTTP server using the Streamable HTTP URL:
Or use the standard uvx approach with the Docker server’s HTTP URL:

Seeding Test Data

A comprehensive seed script is included for development and testing. It populates all tables with realistic, interconnected data:
This seeds memory entries across 7 entities and 5 agents, decision traces with rich causal chains, detected patterns, teams with members, API keys, audit log entries, and more. Run it after your Docker Compose stack is up.

Production Checklist

  • Set AMFS_API_KEYS to enable authentication
  • Use Postgres or S3 backend for durability and shared state
  • Configure resource limits in Kubernetes
  • Enable Ingress with TLS for external access
  • Set up Postgres backups (pg_dump, WAL archiving, or managed service)
  • Monitor /health endpoint with your observability stack
  • Verify Cortex worker is running (/api/v1/cortex/status)
  • Consider HPA for traffic-heavy deployments

Next Steps