Scout · Self-hosted

Install self-hosted Scout

Deploy the Scout API with Redis on your servers. A valid license key is mandatory in self_hosted mode.

  1. Get a license key

    Scout console → Self-hosted. Developer: one free license per Macro account — click once, copy lic_scout_… immediately. Team / Business: annual Stripe checkout; each purchase issues a new key.

  2. Minimum environment

    bash
    SCOUT_DEPLOYMENT_MODE=self_hosted
    SCOUT_LICENSE_KEY=lic_scout_…
    SCOUT_PLATFORM_API_BASE_URL=https://api.macrocontent.dev
    SCOUT_API_KEYS=[{"key":"sk_scout_local_…","tier":"pro","label":"self-host"}]
    SCOUT_REDIS_URL=redis://localhost:6379
    SCOUT_INSTANCE_ID=prod-cluster-1   # optional, stable deployment id
    SCOUT_WORKER_COUNT=2               # must stay within license limit
  3. Docker Compose (example)

    yaml
    services:
      scout-api:
        image: ghcr.io/macrocontent/scout:latest
        ports:
          - "3009:3009"
        environment:
          SCOUT_DEPLOYMENT_MODE: self_hosted
          SCOUT_LICENSE_KEY: ${SCOUT_LICENSE_KEY}
          SCOUT_PLATFORM_API_BASE_URL: https://api.macrocontent.dev
          SCOUT_API_KEYS: ${SCOUT_API_KEYS}
          SCOUT_REDIS_URL: redis://redis:6379
      redis:
        image: redis:7-alpine
  4. Health check

    bash
    curl http://localhost:3009/health

    In self_hosted mode, license.valid must be true after the first heartbeat to the Macrocontent platform.

Platform connectivity
Self-hosted Scout validates the license against SCOUT_PLATFORM_API_BASE_URL with your SCOUT_LICENSE_KEY (the key is the credential — you do not need Macro’s internal platform secret). If the platform is unreachable, a signed offline token (7-day grace) keeps the API running. Protect /v1 with strong local keys in SCOUT_API_KEYS.