Skip to documentation
Operate

Self-host with Docker

Docker Compose is the recommended self-host path. It runs Postgres, the Poolstatis Platform + Ingest API, and the static admin console.

Quick start

git clone https://github.com/lim5max/poolstatis.git
cd poolstatis

docker compose -f docker-compose.selfhost.yml up -d --build
curl http://localhost:3300/health

Create the first workspace, project, and tokens:

docker compose -f docker-compose.selfhost.yml run --rm poolstatis \
  node dist/cli/bootstrap.js "Acme" acme "Acme Product"

Save the printed tokens immediately. Poolstatis stores only token hashes.

Open http://localhost:8080 and paste the printed sk_ or pt_ token. Use the pk_ token from the same bootstrap output for product ingest.

Production notes

For a VPS, copy .env.selfhost.example, set a strong POSTGRES_PASSWORD, and set POOLSTATIS_PUBLIC_URL to the public HTTPS URL. Put the admin/API behind Caddy, Nginx, or Traefik for TLS and keep Postgres private to Docker.

Recommended small VPS baseline: 2 vCPU, 4 GB RAM, and 50+ GB SSD.