1
0
Fork 0
No description
Find a file
2022-11-10 17:43:59 -03:00
.github More adjusts on github actions 2022-09-02 06:59:14 +00:00
.vscode Minor typo 2022-08-25 02:32:54 +00:00
build Code reorganization 2022-08-26 15:56:13 -05:00
deploy Update chart to add letsencrypt 2022-09-02 20:09:15 -05:00
docs Issue #33 - handle networks 2022-11-10 17:43:59 -03:00
examples Issue #33 2022-11-09 23:57:12 -03:00
helm/easyhaproxy Update chart to add letsencrypt 2022-09-02 20:09:15 -05:00
src Issue #33 - handle networks 2022-11-10 17:43:59 -03:00
.dockerignore Minor changes in github actions 2022-08-26 16:05:18 -05:00
.gitignore Add ClusterIP and NodePort deployment 2022-08-29 18:08:15 -05:00
.gitpod.yml Refactoring to Python 2022-08-24 01:00:26 +00:00
build-multiarch.sh Code reorganization 2022-08-26 15:56:13 -05:00
LICENSE Initial Commit 2018-09-16 21:03:17 -05:00
Makefile Code reorganization 2022-08-26 15:56:13 -05:00
README.md Add Videos 2022-09-02 21:21:39 -05:00
setup.py Refactor: tried to refactor code 2020-06-05 16:46:40 +02:00

EasyHAProxy

Opensource ByJG Build Status GitHub source GitHub license GitHub release

EasyHAProxy

Service discovery for HAProxy

EasyHAProxy dynamically creates the haproxy.cfg based on the labels defined in docker containers.

EasyHAProxy can detect and configure HAProxy automatically on the following platforms:

  • Docker
  • Docker Swarm
  • Kubernetes

Features

EasyHAProxy will discover the services based on the Docker Tags of the containers running on a Docker host or Docker Swarm cluster and dynamically set up the haproxy.cfg. Below, EasyHAProxy main features:

  • Use Letsencrypt with HAProxy.
  • Set your custom SSL certificates
  • Balance traffic between multiple replicas
  • Set SSL with three different levels of validations and according to the most recent definitions.
  • Set up HAProxy to listen to TCP.
  • Add redirects.
  • Enable/disable Stats on port 1936 with a custom password.
  • Enable/disable custom errors.

Also, it is possible to set up HAProxy from a simple Yaml file instead of creating haproxy.cfg file.

How Does It Works?

You don't need to change your current infrastructure and don't need to learn the HAProxy configuration.

The steps are:

  • Run the EasyHAProxy container;
  • Add some labels to the containers you want to be parsed by EasyHAProxy (see detailed instructions below);
  • EasyHAProxy will automatically detect the containers, set up, and reload the HAProxy configurations for you without downtime.

Detailed Instructions

For detailed instructions on how to use EasyHAProxy, follow the instructions for the platform you want to use:

Kubernetes Docker Swarm Docker Static
Kubernetes Docker Swarm Docker Static

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 examples above.


Open source ByJG