Skip to content

Self-Hosting XeroML

XeroML is fully open source and can be self-hosted on your own infrastructure. Self-hosting gives you complete control over your data, lets you run XeroML inside your VPC, and enables compliance with data residency requirements.

Why Self-Host?

  • Data residency — keep all trace data in your own environment, never in XeroML Cloud
  • Network isolation — run inside a private VPC with no public internet access required
  • Custom configuration — integrate with your existing SSO, databases, and storage
  • No usage limits — unlimited traces, prompts, and evaluations
  • Open source — audit, modify, and contribute to the codebase

Architecture Overview

XeroML consists of:

ComponentRole
Web applicationNext.js frontend and API server
WorkerBackground job processing (evaluators, exports)
PostgreSQLPrimary relational database
ClickHouseAnalytics and trace storage at scale
RedisCaching and queue management
Blob StorageMedia files, exports (optional)

For smaller deployments, PostgreSQL can handle trace storage without ClickHouse.

Deployment Options

MethodBest for
Docker ComposeSingle-server, development, small teams
Kubernetes / HelmProduction, scalable, existing K8s clusters
AWSECS or EKS on AWS
AzureAKS or Azure Container Apps
GCPGKE or Cloud Run

License

XeroML is MIT-licensed. Self-hosted deployments of the core platform do not require a commercial license.

Enterprise features (SSO, audit logs, advanced RBAC, SLA support) may require a license key for self-hosted deployments. See License Key for details.

Getting Started

The fastest way to try self-hosting is with Docker Compose:

Docker Compose Setup

For production deployments, start with the Kubernetes/Helm guide:

Kubernetes / Helm

Configuration

All configuration is done via environment variables. See Configuration Reference for the full list of available settings.

Upgrades

XeroML releases new versions regularly. See the Changelog and follow the upgrade guide:

Upgrade Guide

Support

For self-hosting support: