Watch for Consul events to rebuild the dynamic configuration

Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
This commit is contained in:
JasonWang2016 2022-01-29 00:16:07 +08:00 committed by GitHub
parent 1048348ae6
commit 7543709ecf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 307 additions and 76 deletions

View file

@ -721,3 +721,27 @@ providers:
--providers.consulcatalog.namespace=production
# ...
```
### `watch`
_Optional, Default=false_
When set to `true`, watches for Consul changes ([Consul watches checks](https://www.consul.io/docs/dynamic-app-config/watches#checks)).
```yaml tab="File (YAML)"
providers:
consulCatalog:
watch: true
# ...
```
```toml tab="File (TOML)"
[providers.consulCatalog]
watch = true
# ...
```
```bash tab="CLI"
--providers.consulcatalog.watch=true
# ...
```

View file

@ -456,6 +456,9 @@ Name of the Traefik service in Consul Catalog (needs to be registered via the or
`--providers.consulcatalog.stale`:
Use stale consistency for catalog reads. (Default: ```false```)
`--providers.consulcatalog.watch`:
Watch Consul API events. (Default: ```false```)
`--providers.docker`:
Enable Docker backend with default settings. (Default: ```false```)

View file

@ -423,6 +423,9 @@ Name of the Traefik service in Consul Catalog (needs to be registered via the or
`TRAEFIK_PROVIDERS_CONSULCATALOG_STALE`:
Use stale consistency for catalog reads. (Default: ```false```)
`TRAEFIK_PROVIDERS_CONSULCATALOG_WATCH`:
Watch Consul API events. (Default: ```false```)
`TRAEFIK_PROVIDERS_CONSUL_ENDPOINTS`:
KV store endpoints (Default: ```127.0.0.1:8500```)

View file

@ -149,6 +149,7 @@
exposedByDefault = true
defaultRule = "foobar"
namespace = "foobar"
watch = true
[providers.consulCatalog.endpoint]
address = "foobar"
scheme = "foobar"

View file

@ -161,6 +161,7 @@ providers:
exposedByDefault: true
defaultRule: foobar
namespace: foobar
watch: true
endpoint:
address: foobar
scheme: foobar