From de2957fcd2aa7dd8d506ad19e16443e63045c8f5 Mon Sep 17 00:00:00 2001 From: jknapp Date: Fri, 21 Feb 2025 10:29:31 -0800 Subject: [PATCH] Update README.md for changes to script --- README.md | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index f7935cb..159d474 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,32 @@ -# HAProxy Manager Base +# HAProxy Manager A Flask-based API service for managing HAProxy configurations, domains, and SSL certificates. +A Flask-based API service for managing HAProxy configurations with dynamic SSL certificate management and health monitoring. To run the container: ```bash docker run -d -p 80:80 -p 443:443 -p 8000:8000 -v lets-encrypt:/etc/letsencrypt -v haproxy:/etc/haproxy --name haproxy-manager repo.anhonesthost.net/cloud-hosting-platform/haproxy-manager-base:latest ``` +## Features + +- RESTful API for HAProxy configuration management +- Database-backed configuration storage using SQLite +- Automatic HAProxy configuration generation from templates +- Let's Encrypt SSL certificate integration with auto-renewal +- Health monitoring endpoint +- Dynamic backend server management +- Template override support for custom backend configurations +- Process monitoring and auto-restart capabilities +- Socket-based HAProxy runtime API integration + +## Requirements + +- HAProxy +- Python 3.x +- Flask +- SQLite3 +- Certbot (for Let's Encrypt certificates) +- OpenSSL (for self-signed start-up certificate) ## API Endpoints @@ -33,6 +54,7 @@ Content-Type: application/json { "domain": "example.com", "backend_name": "example_backend", + "template_override": null, "servers": [ { "name": "server1", @@ -41,7 +63,7 @@ Content-Type: application/json "options": "check" }, { - "name": "server2", + "name": "server2", "address": "10.0.0.2", "port": 8080, "options": "check backup" @@ -90,21 +112,3 @@ Content-Type: application/json "message": "Domain configuration removed" } ``` - -## Features - -- Automatic HAProxy configuration generation -- Let's Encrypt SSL certificate integration -- Backend server management -- Self-signed certificate generation for development -- Health monitoring -- Database-backed configuration storage - -## Requirements - -- HAProxy -- Python 3.x -- Flask -- SQLite3 -- Certbot (for Let's Encrypt certificates) -- OpenSSL (for self-signed certificates)