1
0
Fork 0
docker-easy-haproxy/tests_e2e/swarm
Joao Gilberto Magalhaes a410b34521 Documentation Refactor
2026-02-20 11:46:57 -05:00
..
cloudflare.yml Update plugin paths from /etc/haproxy to /etc/easyhaproxy across tests, configs, and documentation 2026-02-18 16:35:57 -05:00
easyhaproxy.yml Refactor Swarm E2E tests: optimize timeouts, enhance stack deployment/wait logic, consolidate replicas, and update HAProxy config refresh cycle 2026-02-18 15:56:07 -05:00
ip-whitelist.yml Set pytest.fixture scope to class, add Swarm E2E tests, and update Docker Swarm configurations 2026-02-18 15:28:07 -05:00
jwt-validator.yml Update plugin paths from /etc/haproxy to /etc/easyhaproxy across tests, configs, and documentation 2026-02-18 16:35:57 -05:00
plugins-combined.yml Update plugin paths from /etc/haproxy to /etc/easyhaproxy across tests, configs, and documentation 2026-02-18 16:35:57 -05:00
portainer.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00
README.md Documentation Refactor 2026-02-20 11:46:57 -05:00
services.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00

Docker Swarm Examples

Self-contained examples for EasyHAProxy in Docker Swarm mode. All documentation is in the YAML files as header comments.

Quick Start

  1. Pick an example below
  2. Open the YAML file
  3. Read the header comments for complete instructions
  4. Run the commands step-by-step

Prerequisites

All examples require:

  • Docker Swarm initialized (docker swarm init)
  • Overlay network created (docker network create --driver overlay --attachable easyhaproxy)
  • EasyHAProxy deployed (docker stack deploy -c easyhaproxy.yml easyhaproxy)

See header comments in each file for detailed setup instructions.

Basic Examples

File Description
easyhaproxy.yml EasyHAProxy service for Swarm with stats and certbot
services.yml Basic services with SSL (embedded cert and file-based)
portainer.yml Portainer management UI behind EasyHAProxy

Plugin Examples

File Description
jwt-validator.yml JWT token validation for API protection
ip-whitelist.yml IP whitelist for admin panels or sensitive services
cloudflare.yml Restore real client IPs when behind Cloudflare CDN
plugins-combined.yml Multiple plugins combined for layered security

Documentation Structure

Each YAML file contains:

  • WHAT THIS DEMONSTRATES - Key features and concepts
  • REQUIREMENTS - Idempotent setup commands (safe to run multiple times)
  • HOW TO START - Command to deploy the stack
  • HOW TO VERIFY IT'S WORKING - Test commands with expected outputs
  • CLEAN UP - Commands to remove resources

Important: Service Labels

In Swarm mode, labels must be under deploy.labels, NOT top-level labels:

# ✅ CORRECT - Service labels
deploy:
  labels:
    easyhaproxy.http.host: example.com

# ❌ WRONG - Container labels (ignored in Swarm)
labels:
  easyhaproxy.http.host: example.com

Additional Documentation