1
0
Fork 0
docker-easy-haproxy/tests_e2e/swarm
Joao Gilberto Magalhaes d66c4f8595 Migrate examples to tests_e2e directory structure
- Relocated all files and scripts from `examples` to `tests_e2e` for better organization.
- Updated references and paths in configurations, scripts, and test files.
- Adjusted `bump-version.sh` to handle the new `tests_e2e` structure.
- Updated `.gitignore` to reflect path changes.
2026-02-12 17:05:04 -05:00
..
cloudflare.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00
easyhaproxy.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00
ip-whitelist.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00
jwt-validator.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00
plugins-combined.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00
portainer.yml Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -05:00
README.md Migrate examples to tests_e2e directory structure 2026-02-12 17:05:04 -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