diff --git a/docs/mint.json b/docs/mint.json
index c995598b9..a5f673248 100644
--- a/docs/mint.json
+++ b/docs/mint.json
@@ -175,7 +175,8 @@
"v2/usage/trace-decorator",
"v2/usage/track-endpoint-decorator",
"v2/usage/manual-trace-control",
- "v2/usage/public-api"
+ "v2/usage/public-api",
+ "v2/usage/self-host-backend"
],
"version": "v2"
},
diff --git a/docs/v2/usage/self-host-backend.mdx b/docs/v2/usage/self-host-backend.mdx
new file mode 100644
index 000000000..522e2a27b
--- /dev/null
+++ b/docs/v2/usage/self-host-backend.mdx
@@ -0,0 +1,181 @@
+---
+ title: "Self-Hosting the AgentOps Backend"
+ description: "Run the AgentOps API, dashboard, and supporting services with Docker Compose or native commands."
+---
+
+This guide is for users who want to host **the entire AgentOps platform** themselves rather than sending data to AgentOps Cloud.
+
+## Overview
+
+The AgentOps backend is a **polyglot monorepo** located in the `app/` directory. It contains:
+
+| Folder | Description |
+| --- | --- |
+| `api/` | FastAPI server that processes trace & metric data, handles authentication, and exposes the public REST API. |
+| `dashboard/` | Next.js web application for visualising traces, metrics, and managing your project. |
+| `opentelemetry-collector/` | OpenTelemetry Collector that funnels spans/logs/metrics into ClickHouse. |
+| `clickhouse/` | Configuration for a local ClickHouse instance (analytics database). |
+| `supabase/` | Database & auth schema migrations for Supabase. |
+| `compose.yaml` | Docker Compose file that wires everything together (includes OTEL collector via `include:` directive). |
+| `justfile` | Convenience commands for local development. |
+
+You can run the full stack **with Docker Compose** (recommended) or **natively** during development.
+
+---
+
+## 1. Prerequisites
+
+Make sure the following tooling is installed on your machine:
+
+1. **Docker Desktop** (or Docker Engine & Compose plugin) – _required for the recommended path_.
+2. **Node.js 18+** – needed if you plan to run the dashboard without Docker.
+3. **Bun** or **npm / pnpm** – package manager for JavaScript projects.
+4. **Python 3.12+** – required for the API if you choose native execution.
+5. **uv** _(optional but faster than pip)_ – Python dependency manager.
+
+```bash
+# macOS (Homebrew examples)
+brew install docker bun uv-python
+```
+
+---
+
+## 2. Clone the Repository
+
+```bash
+git clone https://github.com/AgentOps-AI/AgentOps.Next.git
+cd AgentOps.Next/app
+```
+
+---
+
+## 3. Configure Environment Variables
+
+Each service has its own `.env.example`. Copy and adjust them:
+
+```bash
+# Root env (used by Docker Compose)
+cp .env.example .env
+
+# API
+cp api/.env.example api/.env
+
+# Dashboard (Next.js expects *.local in dev)
+cp dashboard/.env.example dashboard/.env.local
+```
+
+### Minimum Required Variables
+
+At a minimum you must supply credentials for:
+
+* **Supabase** – `SUPABASE_URL`, `SUPABASE_KEY`
+* **ClickHouse** – `CLICKHOUSE_HOST`, `CLICKHOUSE_USER`, `CLICKHOUSE_PASSWORD`, `CLICKHOUSE_DATABASE`
+* **JWT_SECRET_KEY** – any random string (used to sign auth tokens)
+
+See the `.env.example` files for a full list and descriptions.
+
+---
+
+## 4. Run Everything with Docker Compose (Recommended)
+
+From the `app/` directory run:
+
+```bash
+# build images & start in detached mode
+docker compose up -d
+```
+
+The compose file:
+
+* Builds the **API** & **dashboard** images.
+* Brings up **ClickHouse** & **OTEL Collector**.
+* Exposes the main ports:
+ * Dashboard →
+ * API (Swagger) →
+ * OTLP gRPC/HTTP receivers → `4317` / `4318`
+
+Stop everything with:
+
+```bash
+docker compose down
+```
+
+> **Troubleshooting:** use `docker compose logs -f ` to inspect container output. Make sure your environment variables are reachable inside the containers.
+
+---
+
+## 5. Developing Locally Without Docker
+
+Prefer Docker for a consistent environment, but you can run services directly on your host for faster hot-reloading.
+
+### Install Dependencies
+
+```bash
+# JS/TS tooling (root)
+bun install
+
+# Python dev tools (root)
+uv pip install -r requirements-dev.txt
+
+# API package deps
+cd api && uv pip install -e . && cd ..
+
+# Dashboard deps
+cd dashboard && bun install && cd ..
+```
+
+### Start Services
+
+Open **two terminals**:
+
+```bash
+# Terminal ① – API
+just api-native # or: (cd api && uv run python run.py)
+
+# Terminal ② – Dashboard
+just fe-run # or: (cd dashboard && bun dev)
+```
+
+ClickHouse & OTEL Collector still need to run somewhere. The simplest option is to leave them inside Docker:
+
+```bash
+# Run only infra dependencies
+docker compose up -d clickhouse otelcollector
+```
+
+---
+
+## 6. Convenience Commands (`justfile`)
+
+The repository ships with a [`justfile`](https://github.com/casey/just) that wraps common tasks:
+
+```bash
+just api-docker-build # Build the backend image
+just api-docker-run # Run the backend in Docker
+just api-native # Run API on host
+just fe-run # Start Next.js dev server
+just fe-test # Run frontend tests
+```
+
+Run `just --list` to see everything available.
+
+---
+
+## 7. Production Deployment
+
+For a small-scale self-host the **same** `compose.yaml` works:
+
+```bash
+docker compose -f compose.yaml up -d --build
+```
+
+For Kubernetes and cloud-native options, consult the forthcoming deployment guide.
+
+---
+
+## 8. Next Steps
+
+* Instrument your code with `agentops` (see [Quickstart](/v2/quickstart)).
+* Head over to `/traces` or to view live data.
+
+Questions? Join our Discord.
\ No newline at end of file