Skip to main content

Docker Compose with Redis

For deployments where you need pool state to survive restarts, or where you want to run multiple replicas sharing a single IP pool. docker-compose.yml

Scaling replicas

Because pool state lives in Redis, multiple replicas share it safely. Each IP is checked out to exactly one replica at a time via Redis BLPOP atomicity.
When scaling, remove the host ports: mapping from the proxy-hopper service and put a load balancer in front of the replicas.

Load balancing with Traefik

Enabling Prometheus metrics

Add the metrics port and environment variables to the proxy-hopper service:
Metrics are available at http://localhost:9090/metrics.

Enabling authentication

Mount a config file with auth: enabled. For configs containing credentials, use a Docker secret or pass the file from a secrets manager rather than committing it to source control:
See API Key Authentication for the auth config format.

Memory backend — when Redis is overkill

For single-host deployments that don’t need multi-replica, you can use the simpler memory image even with Compose. Just skip Redis:
See Simple Docker Deployment for the single-container walkthrough.