Lux Docs

Kubernetes

K8s deployment for production

Namespace

All explorer services run in lux-explorer namespace on the lux-k8s cluster.

Components

ResourceTypeReplicas
Backend (per chain)Deployment1
Frontend (per chain)Deployment1
PostgreSQL (per chain)StatefulSet1
RedisDeployment1

Five Explorer Deployments

Each chain gets its own backend + frontend pair:

# RPC endpoint format (internal)
ETHEREUM_JSONRPC_HTTP_URL: "http://luxd-1.luxd-headless.lux-mainnet.svc:9630/ext/bc/{blockchain_id}/rpc"

TLS & Ingress

Traefik IngressRoute with Let's Encrypt:

apiVersion: traefik.io/v1alpha1
kind: IngressRoute
spec:
  routes:
    - match: Host(`explore.lux.network`)
      services:
        - name: explore-frontend
          port: 3000

DNS

All explore-*.lux.network domains point to the lux-k8s load balancer (134.199.138.27) in DNS-only mode (no Cloudflare proxy).

Memory Management

For subnet chains with small block counts, use the memory-saving environment variables from the Indexing page. Set container memory limit to 8Gi with Recreate strategy.

PostgreSQL Selector

Each chain's PostgreSQL must have a chain label:

selector:
  matchLabels:
    app: explorer-postgres
    chain: zoo  # Required for service routing

On this page