Add 'plugins/traefik/' from commit 'aef1f9e0dd205ea9cdea9e3ccf11900c5fe79b1f'

git-subtree-dir: plugins/traefik
git-subtree-mainline: 1a14070131
git-subtree-split: aef1f9e0dd
This commit is contained in:
Alexis Couvreur
2022-09-30 14:32:09 +00:00
86 changed files with 24035 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
# Docker swarm
## Run the demo
1. `git clone git@github.com:acouvreur/traefik-ondemand-plugin.git`
2. `cd traefik-ondemand-plugin/examples/multiple_containers`
3. `docker swarm init`
4. `export TRAEFIK_PILOT_TOKEN=...`
5. `docker stack deploy -c docker-stack.yml DOCKER_SWARM`
6. Load `http://localhost/nginx`
7. Load `http://localhost/whoami`
8. After 1 minute whoami is scaled to 0/0
9. After 5 minutes nginx is scaled to 0/0
10. `docker stack rm DOCKER_SWARM`
## Limitations
### Define a middleware per service/container
Due to Traefik plugin, the interface is to provide a config and a `ServeHTTP` request.
This function has no access to the Traefik configuration, thus no way to determine the container/service associated to the request.
See https://github.com/acouvreur/traefik-ondemand-plugin/issues/8#issuecomment-931940533.