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.
This commit is contained in:
parent
b34d7822e4
commit
d66c4f8595
51 changed files with 35 additions and 35 deletions
67
tests_e2e/swarm/README.md
Normal file
67
tests_e2e/swarm/README.md
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
# 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.yml) | EasyHAProxy service for Swarm with stats and certbot |
|
||||
| [services.yml](services.yml) | Basic services with SSL (embedded cert and file-based) |
|
||||
| [portainer.yml](portainer.yml) | Portainer management UI behind EasyHAProxy |
|
||||
|
||||
## Plugin Examples
|
||||
|
||||
| File | Description |
|
||||
|------|-------------|
|
||||
| [jwt-validator.yml](jwt-validator.yml) | JWT token validation for API protection |
|
||||
| [ip-whitelist.yml](ip-whitelist.yml) | IP whitelist for admin panels or sensitive services |
|
||||
| [cloudflare.yml](cloudflare.yml) | Restore real client IPs when behind Cloudflare CDN |
|
||||
| [plugins-combined.yml](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`:
|
||||
|
||||
```yaml
|
||||
# ✅ CORRECT - Service labels
|
||||
deploy:
|
||||
labels:
|
||||
easyhaproxy.http.host: example.com
|
||||
|
||||
# ❌ WRONG - Container labels (ignored in Swarm)
|
||||
labels:
|
||||
easyhaproxy.http.host: example.com
|
||||
```
|
||||
|
||||
## Additional Documentation
|
||||
|
||||
- [Docker Swarm Guide](../../docs/swarm.md)
|
||||
- [Container Labels Reference](../../docs/container-labels.md)
|
||||
- [Using Plugins](../../docs/plugins/)
|
||||
- [ACME/Let's Encrypt](../../docs/acme.md)
|
||||
Loading…
Add table
Add a link
Reference in a new issue