Self-HostingDocker Setup

Docker Setup

Quick Start

# Start app + PostgreSQL
docker compose up -d
 
# Run database migrations
docker compose exec app npx prisma migrate deploy
 
# Open http://localhost:3000

Docker Build

# Build image
docker build -t hitlaas-platform .
 
# Run standalone
docker run -p 3000:3000 \
  -e DATABASE_URL="postgresql://user:pass@host:5432/hitlaas" \
  -e NEXTAUTH_URL="http://localhost:3000" \
  -e NEXTAUTH_SECRET="your-secret-here" \
  hitlaas-platform

Pre-Built Images

docker pull ghcr.io/thomasansems/hitlaas-platform:latest

Available for linux/amd64 and linux/arm64.

To use instead of building locally, edit docker-compose.yml:

services:
  app:
    image: ghcr.io/thomasansems/hitlaas-platform:latest
    # build: .  ← comment out

Docker Compose

The included docker-compose.yml sets up:

  • app — HeySummon Next.js application on port 3000
  • db — PostgreSQL database
  • Optional tunnel sidecar (Cloudflare, Tailscale, or Ngrok)

Health Check

The /api/health endpoint is used for Docker health checks:

{
  "status": "ok",
  "version": "0.1.0",
  "connectivity": "cloudflare",
  "timestamp": "2025-01-01T00:00:00.000Z"
}

Troubleshooting

App won’t start

docker compose logs app

Common causes: missing env vars, database not ready.

Database issues

# Reset the database
docker compose down -v
docker compose up -d

ARM64 / Raspberry Pi

All recommended images support ARM64. Ensure you’re using multi-arch images.