Deployment prerequisites

Server Requirements

This page describes the boring infrastructure prerequisites for running the platform. The step-by-step installer guide is provided to customers after purchase.
Supported environments
  • Linux server (Rocky Linux 8+ or Ubuntu 20+ recommended)
  • Root or sudo privileges
  • Docker Engine + Docker Compose plugin
  • Reverse proxy with TLS termination (Apache/Nginx, DirectAdmin supported)
  • Outbound internet access for provider ingestion
Sizing (starting point)
  • 4 vCPU (8 recommended)
  • 8 GB RAM (16 recommended)
  • SSD/NVMe sized for catalog + logs + cache
Exact sizing depends on catalog size and refresh cadence.
DNS requirements
You must be able to create DNS records for the website and its service subdomains. Typical A/AAAA records:
  • @ (root domain)
  • api
  • admin
  • auth
All records must resolve correctly before activation and go-live.
Networking model (support-eligible)
  • Only ports 80/443 are public (through the reverse proxy).
  • Application services run behind the proxy and are not meant to be exposed directly.
  • Internal services must remain loopback-only (127.0.0.1) behind the proxy.
Internet
  -> Reverse proxy (TLS)
     -> web (public site)
     -> admin (operator console)
     -> api-core + auth-service
        -> postgres / redis / nats
        -> worker (ingestion)
DirectAdmin note
  • You must register subdomains in DirectAdmin before reverse proxy routing works: admin, api, auth.
  • After adding them, rebuild configs (DirectAdmin): rewrite_confs.
Verification checks
Before going live, you should be able to reach:
  • Public site and its age gate config endpoint
  • https://api.<domain>/health
  • https://admin.<domain>
Need a custom environment?
DirectAdmin, Cloudflare in front, custom proxy constraints, additional providers, or bespoke themes are handled via scoping.
Continue evaluation
Product, pricing, what's included, onboarding, and providers.

We use analytics cookies to measure performance and improve operator experience. You can accept or reject optional tracking.