Skip to main content

HAProxy label based routing with service discovery for Docker, Swarm, and Kubernetes

Project description


sidebar_key: docker-easy-haproxy tags: [docker, devops]

EasyHAProxy

Sponsor Opensource ByJG Build Status GitHub source GitHub license GitHub release Helm Version Artifact Hub

EasyHAProxy

Service discovery for HAProxy

EasyHAProxy dynamically creates haproxy.cfg based on metadata from your workloads — Docker labels, Swarm service labels, or Kubernetes Ingress annotations. No HAProxy knowledge required.

Features

  • Automatic service discovery — Docker, Docker Swarm, Kubernetes, or static YAML
  • Zero-downtime HAProxy reload — configuration updates happen without dropping connections
  • Automatic TLS with ACME — Let's Encrypt, ZeroSSL, BuyPass, and more
  • Custom SSL certificates — volume-mount or label-embed your own PEM files
  • TCP mode — proxy any TCP service, not just HTTP
  • Plugin system — JWT validation, IP whitelisting, Cloudflare IP restoration, FastCGI, path blocking, and custom plugins
  • Real-time monitoring dashboard — built-in, zero-dependency web UI with live traffic charts, frontend/backend health, and per-server stats (enabled with a single env var)
  • Balance algorithms — roundrobin, leastconn, source, uri, and more

Supported platforms

Kubernetes Docker Swarm Docker Static

Install using tools:

Helm MicroK8s Dokku DigitalOcean

Documentation

Section Description
Getting Started Choose your runtime and discovery mode, minimal working setup
Guides SSL, ACME, plugins, Helm, MicroK8s, Dokku, DigitalOcean
Concepts Service discovery, config pipeline, plugin model, TLS termination
Reference Environment variables, container labels, CLI flags, volumes

Who is using?

EasyHAProxy is part of some projects:

Monitoring Dashboard

HAProxy Monitor

A real-time dashboard is available at http://<host>:11936/ whenever HAPROXY_PASSWORD is set — no extra containers, no Prometheus, no Grafana. See the dashboard guide.

See EasyHAProxy in action

Click on the image to see the videos (use HD for better visualization)

Docker In Action Docker and Letsencrypt K8s In Action K8s and Letsencrypt Static Configuration TCP Mode

Here is the code applied in the test examples above.


Open source ByJG

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

easyhaproxy-6.1.1.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

easyhaproxy-6.1.1-py3-none-any.whl (55.2 kB view details)

Uploaded Python 3

File details

Details for the file easyhaproxy-6.1.1.tar.gz.

File metadata

  • Download URL: easyhaproxy-6.1.1.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for easyhaproxy-6.1.1.tar.gz
Algorithm Hash digest
SHA256 c0ad9afaa7cc32bd555c25ec768b74f815ddddb6c81a341a99ad738793891dc7
MD5 5a31f13ebde8327a99d7e40e67f4e743
BLAKE2b-256 8ca0d7696f103f2c8a5f27120158f3e8643c16d086115313d461a397ac69e483

See more details on using hashes here.

Provenance

The following attestation bundles were made for easyhaproxy-6.1.1.tar.gz:

Publisher: build.yml on byjg/docker-easy-haproxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easyhaproxy-6.1.1-py3-none-any.whl.

File metadata

  • Download URL: easyhaproxy-6.1.1-py3-none-any.whl
  • Upload date:
  • Size: 55.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for easyhaproxy-6.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b450ff8341b28a2b94bae87cc45961896c386d7217a12c7c42e65ab1592caa70
MD5 8f200fb98d1601bb783c2d1bfddf762d
BLAKE2b-256 d6143fb80a29bfded8c2d341b72e11609ab1b398d3a151e9d3af9eb927917f6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for easyhaproxy-6.1.1-py3-none-any.whl:

Publisher: build.yml on byjg/docker-easy-haproxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page