Skip to content

Smart Proxy

Smart Proxy

Scale-to-zero and smart traffic management for Kubernetes & OpenShift — without touching your apps.

Get started View on GitHub

Smart Proxy in action


Why Smart Proxy?

Idle environments burn money. Preview, dev, staging and demo namespaces run 24/7 while nobody looks at them — and most apps can't scale to zero on their own.

Smart Proxy fixes that. It sits in front of your services, puts inactive Deployments to sleep (0 replicas), and wakes them on the first request — showing a friendly "waking up" page while the pod starts. It works by patching your existing Ingress or Route: no sidecars, no rewrites, no code changes. Turn it off and everything reverts.

What you get

  •   Auto-sleep & instant wake


    Scale idle deployments to zero and wake them transparently on the next request — a "waking up" page bridges the gap.

  •   Dependency chains


    Keep app → api → db awake together and let them sleep together. Traffic to one keeps the whole chain alive.

  •   Ingress and Routes


    Manage vanilla Kubernetes Ingresses and OpenShift Routes from a single, unified dashboard.

  •   Admin dashboard


    A modern React UI with real-time logs, live status indicators and one-click patching.

  •   Zero app changes


    Annotation-based and fully reversible. Nothing to add to your images or your code.

  •   Real cost savings


    Stop paying for preview, dev, staging and demo environments while they sit unused.

How it works

In four steps

  1. Patch a route from the dashboard — Smart Proxy points the Ingress/Route to itself (originals saved in annotations).
  2. Serve — incoming traffic hits Smart Proxy, which checks the target's state.
  3. Wake — if the deployment is asleep, it holds the request, scales it up, and shows a "waking up" page until ready.
  4. Sleep — after an idle timeout with no traffic, it scales the deployment back to zero.
flowchart LR
    U([User]) --> ING["Ingress / Route"]
    ING -->|patched| SP["Smart Proxy"]
    SP -->|awake| SVC["App Service"] --> POD["App Pods"]
    SP -. asleep .-> API["Kubernetes API"]
    API -. scale up .-> POD

Read the full architecture →

Get started

  •   Install


    Deploy with Helm in two commands, or run it locally with Docker Desktop.

    Installation guide

  •   Configure


    Environment variables, annotations and Helm values reference.

    Configuration

helm repo add smart-proxy https://ivseb.github.io/smart-proxy
helm install smart-proxy smart-proxy/smart-proxy --namespace smart-proxy --create-namespace