Commit graph

300 commits

Author SHA1 Message Date
Jean-Baptiste Doumenjou 447c3567b4
Fix the redirect entrypoint default priority 2021-02-02 17:42:04 +01:00
kevinpollet ed5321999c
Merge branch v2.4 into master 2021-01-13 09:21:20 +01:00
romain 92886c46ea Merge branch v2.3 into v2.4 2021-01-11 16:26:53 +01:00
Kevin Pollet c24f75ce0b
Update copyright year for 2021 2021-01-08 19:20:04 +01:00
Linden Krouse fc7ec17905
Feature: add udp timeout configuration 2021-01-07 17:16:03 +01:00
Julien Salleyron e5a01c7cc8
Add HTTP3 support (experimental)
Co-authored-by: Ludovic Fernandez <ldez@users.noreply.github.com>
2021-01-07 14:48:04 +01:00
Romain c21597c593
Add Kubernetes Gateway Provider
Co-authored-by: Jean-Baptiste Doumenjou <925513+jbdoumenjou@users.noreply.github.com>
2020-12-15 16:40:05 +01:00
Harold Ozouf 64a65cadf3
Send anonymized dynamic configuration to Pilot
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2020-12-03 15:52:05 +01:00
kevinpollet 2112de6f15
Merge branch v2.3 into master 2020-11-20 11:30:07 +01:00
Harold Ozouf 4f43c9ebb4
Fix missing allow-empty tag on ECS and Consul Catalog providers
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2020-11-19 00:12:03 +01:00
Matthias Schneider 84b125bdde
added support for tcp proxyProtocol v1&v2 to backend 2020-11-17 13:04:04 +01:00
Fernandez Ludovic 520fcf82ae Merge branch v2.3 into master. 2020-11-09 00:07:28 +01:00
Daniel Adams 74d1d55051
Feature: Exponential Backoff in Retry Middleware 2020-11-05 16:14:04 +01:00
Kevin Pollet 3a8cb3f010
Add AccessControlAllowOriginListRegex field to deepcopy 2020-11-05 11:24:03 +01:00
Michael af04e92cf2
Enable stats collection when pilot is enabled 2020-10-30 16:54:04 +01:00
Michael 4ea1c98ac9
Improve anonymize configuration 2020-10-30 12:44:05 +01:00
iamolegga 49cdb67ddc
Middlewares: add forwardAuth.authResponseHeadersRegex 2020-10-29 15:10:04 +01:00
Luca Guidi b5198e63c4
Allow to use regular expressions for AccessControlAllowOriginList 2020-10-29 10:52:03 +01:00
romain afcec56be4 Merge 'v2.3' into master. 2020-10-08 14:05:10 +02:00
Nikita Konev 326be29568
Filter ForwardAuth request headers 2020-10-07 16:36:04 +02:00
Matthias Schneider 3506cbd5e9
fix: udp json struct tag 2020-10-02 17:38:04 +02:00
Kevin Pollet 5e63ab619e
Fix default value of docker client timeout 2020-09-25 09:14:04 +02:00
Fernandez Ludovic 86c099d629 Merge branch v2.3 into master 2020-09-17 12:32:18 +02:00
Jean-Baptiste Doumenjou c0f1e74bed
chore: move to Traefik organization.
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2020-09-16 15:46:04 +02:00
Ludovic Fernandez 3e60863e2d
Moves pilot outside the experimental section. 2020-09-15 12:08:03 +02:00
Julien Salleyron 76f42a3013
add ServersTransport on services 2020-09-11 15:40:03 +02:00
Fernandez Ludovic 6075f7e8fd Merge branch v2.3 into master 2020-09-08 10:48:09 +02:00
Fernandez Ludovic 3678bd5a93 Merge branch v2.2 into v2.3 2020-09-04 21:06:11 +02:00
Ludovic Fernandez 41aa2672cd
Update go-acme/lego to v4.0.1 2020-09-04 10:52:03 +02:00
Kevin Pollet 3677252e17
Add missing IPStrategy struct tag for YAML 2020-09-01 17:34:04 +02:00
Sune Keller 29bd6faa18
Support configuring a HTTP client timeout in the Docker provider 2020-08-28 10:02:03 +02:00
Fernandez Ludovic 483e2c43cf Merge branch v2.3 into master 2020-08-26 12:22:39 +02:00
Ludovic Fernandez b67a7215f6
chore: update linter. 2020-08-21 11:12:04 +02:00
Ludovic Fernandez 1502d20def
chore: move the parser to a dedicated package. 2020-08-17 18:04:03 +02:00
Никита Тимофеев 449afea4fc
Allows multi-level KV prefixes 2020-08-11 17:42:05 +02:00
Ludovic Fernandez 44a244b1cb
file parser: skip nil value. 2020-07-17 11:04:04 +02:00
Fernandez Ludovic c42f1b7a50 feat: raw map parser. 2020-07-15 20:14:04 +02:00
Fernandez Ludovic 0186c31d59 feat: plugins integration. 2020-07-15 20:14:04 +02:00
Julien Salleyron 4a31544024 feat: Traefik Pilot integration.
Co-authored-by: Ludovic Fernandez <ldez@users.noreply.github.com>
2020-07-15 20:14:04 +02:00
Kevin Pollet 1ef93fead7
Add HTTP Provider
* feat: add HTTP provider implementation

* refactor: add SetDefaults and struct tag for the new file parser

* feat: add TLS configuration property

* refactor: rework HTTP provider implementation

* feat: provide config only once if fetched config is unchanged

* style: lint

* ui: add HTTP provider icon

* tests: simplify and fix integration test

* docs: add reference config for file

* docs: move http reference config for file

Co-authored-by: Daniel Tomcej <daniel.tomcej@gmail.com>
2020-07-15 16:56:03 +02:00
Alessandro Chitolina 285ded6e49
Add AWS ECS provider
* add ecs provider

* add ecs docs

* fix test after rebase

* add provider icon

* add missing addProvider call

* Fix for review

* Fix documentation

* Fix for review

* Fix documentation

* fix ctx usage

* autoDiscoverClusters setDefaults false

* Fix for review

* review: doc.

* Fix for review: add ctx in backoff retry

* review: linter.

Co-authored-by: Michael <michael.matur@gmail.com>
Co-authored-by: romain <romain@containo.us>
Co-authored-by: Fernandez Ludovic <ludovic@containo.us>
2020-07-15 16:28:04 +02:00
Fernandez Ludovic 6e4f5821dc Merge branch 'v2.2' into master 2020-07-15 09:37:32 +02:00
Ludovic Fernandez a3df5b9a94
fix: documentation references. 2020-07-15 09:10:03 +02:00
Romain 0e97a3becd
Revert domain fronting fix
* revert domain fronting changes

* reintroduce HostHeader rule

* add doc for removals
2020-07-13 17:58:03 +02:00
Julien Salleyron 143e9b6f9c
Fix default value for InsecureSNI when global is not set 2020-07-13 12:06:03 +02:00
Jean-Baptiste Doumenjou c315b4e064
Change the default value of insecureSNI
* fix: allow domain fronting by default

* review: typo.

* review: doc.

Co-authored-by: Fernandez Ludovic <ludovic@containo.us>
2020-07-10 18:48:03 +02:00
jb doumenjou 73ca7ad0c1 Merge remote-tracking branch 'upstream/v2.2' into mrg-current-v2.2 2020-07-10 11:23:49 +02:00
Romain 2b35397169
Disable domain fronting
Co-authored-by: jbdoumenjou <jb.doumenjou@gmail.com>
2020-07-08 12:18:03 +02:00
Ludovic Fernandez a20e90aa17
chore: update linter. 2020-07-07 14:42:03 +02:00
Ludovic Fernandez cb1d0441e9
feat: use parser to load dynamic config from file. 2020-06-17 16:48:04 +02:00
Ludovic Fernandez 328611c619
Update linter 2020-05-11 12:06:07 +02:00
mpl 4da63c9237
ratelimit: do not default to ipstrategy too early 2020-04-29 18:32:05 +02:00
Ludovic Fernandez de42fc10b5
fix: cookie documentation. 2020-04-29 17:10:05 +02:00
Michael 6c08d0b20b
Fix documentation 2020-04-07 18:38:04 +02:00
Michael 148400ae0a
Add note about health check in kubernetes 2020-04-07 17:16:03 +02:00
Ludovic Fernandez a6b6e1d101
Change the default priority on the router created by the redirect. 2020-03-30 14:50:05 +02:00
Fernandez Ludovic b54412e82e Merge branch v2.1 into v2.2 2020-03-24 14:18:39 +01:00
Ludovic Fernandez ee06778cc2
fix: period field name. 2020-03-23 13:08:04 +01:00
Ludovic Fernandez 0c28630948
Fix sameSite (Traefik v2) 2020-03-23 11:24:05 +01:00
Ludovic Fernandez 44221fba49
Fix entry point redirect behavior 2020-03-18 15:48:04 +01:00
Ludovic Fernandez af58faafae
Drop traefik from default entry points. 2020-03-16 16:54:04 +01:00
Dmytro Tananayskiy cf7f0f878a Support mirroring request body
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2020-03-05 18:30:07 +01:00
Fernandez Ludovic 09c07f45ee Merge v2.1 into master. 2020-03-05 16:10:23 +01:00
Traefiker Bot a6040c623b
Entry point redirection and default routers configuration
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2020-03-05 12:46:05 +01:00
Traefiker Bot 082fb166a2
Rework access control origin configuration 2020-03-05 08:18:04 +01:00
Fernandez Ludovic e9d0a16a3b Merge 'v2.1' into master 2020-02-29 00:59:18 +01:00
Robin Müller 18d90ecd96
Do not follow redirects for the health check URLs 2020-02-26 17:28:04 +01:00
Julien Salleyron bb4de11c51
Add UDP in providers with labels 2020-02-20 22:24:05 +01:00
Ludovic Fernandez 94b2b6393f
Add missing generated element for UDP. 2020-02-12 15:40:06 +01:00
mpl 115d42e0f0
UDP support
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2020-02-11 01:26:04 +01:00
Fernandez Ludovic 60e247862a Merge branch v2.1 into master 2020-01-21 18:41:46 +01:00
Julien Salleyron c296a4a967 Remove Content-Type auto-detection
Co-authored-by: mpl <mathieu.lonjaret@gmail.com>
2020-01-21 18:06:03 +01:00
Ludovic Fernandez 4329d393e6 Update license date 2020-01-14 15:22:05 +01:00
mpl 6f4aefffe7 Add period for rate limiter middleware 2020-01-08 11:44:04 +01:00
Fernandez Ludovic da3d814c8b Merge branch 'v2.1' into master 2020-01-07 19:13:48 +01:00
Ludovic Fernandez c02f222005 Improves error message when a configuration file is empty. 2020-01-07 15:24:05 +01:00
Ludovic Fernandez 8930236396 fix: invalid label/flag parsing. 2019-12-17 16:10:06 +01:00
David 5f50d2e230 Add serial number certificate to forward headers 2019-12-12 00:32:03 +01:00
Ludovic Fernandez 9b9f4be6a4 Add KV store providers (dynamic configuration only)
Co-authored-by: Jean-Baptiste Doumenjou <jb.doumenjou@gmail.com>
2019-11-28 21:56:04 +01:00
Amine Benseddik fe8b090911 Elastic APM tracer implementation 2019-11-27 16:00:07 +01:00
Fernandez Ludovic ca9eaf383a Merge branch 'v2.0' into master 2019-11-15 13:34:41 +01:00
Ludovic Fernandez 424e2a9439 Add internal provider
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2019-11-14 16:40:05 +01:00
Ludovic Fernandez 7afd2dbd20 fix: stripPrefix middleware with empty resulting path. 2019-11-14 10:32:05 +01:00
Ludovic Fernandez 3410541a2f Conditionnal compression based on Content-Type 2019-10-31 11:36:05 +01:00
Ludovic Fernandez 5f8fb6c226 fix: Consul Catalog documentation. 2019-10-29 12:32:05 +01:00
Fernandez Ludovic d66dd01438 Merge branch 'v2.0' into master 2019-10-29 09:52:45 +01:00
Ludovic Fernandez 3747eb59ea fix: deep copy of passHostHeader on ServersLoadBalancer. 2019-10-25 14:40:05 +02:00
Andrew Privalov 7be2db6e86 Add Consul Catalog provider 2019-10-15 17:34:08 +02:00
Ludovic Fernandez 48f11900d3 fix: default passHostHeader for file provider. 2019-09-30 18:12:04 +02:00
Ludovic Fernandez 230cd28ac9 fix: return an error instead of panic. 2019-09-30 17:52:04 +02:00
Ludovic Fernandez 29efac3e5e fix: update linter. 2019-09-26 11:00:06 +02:00
Ludovic Fernandez 90057318c8 Flag names don't need a consistent case. 2019-09-20 16:36:04 +02:00
Ludovic Fernandez 47a9b086ea Disable collect data by default. 2019-09-16 17:26:06 +02:00
Julien Salleyron 685c6dc00c Add weighted round robin load balancer on TCP
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2019-09-13 20:00:06 +02:00
Ludovic Fernandez 8e18d37b3d fix: logger and context. 2019-09-13 19:28:04 +02:00
Ludovic Fernandez b4c7b90c9e fix: boolean flag parsing with map. 2019-09-13 19:10:04 +02:00
Julien Salleyron b55be9fdea On client CloseWrite, do CloseWrite instead of Close for backend
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2019-09-13 17:46:04 +02:00
Julien Salleyron d044c0f4cc New API security 2019-09-06 15:08:04 +02:00
Michael b8ed6f1588 Re enable ratelimit integration tests 2019-09-03 14:34:04 +02:00
Bas van Beek cb7c5a8ca1 Update Zipkin OpenTracing driver to latest 0.4.3 release 2019-09-03 11:52:04 +02:00
Ludovic Fernandez 306e5081d9 fix: Datadog case. 2019-09-02 03:18:04 -07:00
Ludovic Fernandez 259c7adc81 deep-copy for MirrorService 2019-09-02 02:54:04 -07:00
Ludovic Fernandez af9762cf32 Improve API for the web UI 2019-09-02 02:38:04 -07:00
Julien Salleyron df0dd2f5e6 Add errors about unknown entryPoint in runtime api 2019-08-29 03:38:04 -07:00
Julien Salleyron 602a2ea541 Adds mirroring service 2019-08-26 10:00:04 -07:00
mpl 4ec90c5c0d Add rate limiter, rename maxConn into inFlightReq
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
Co-authored-by: Jean-Baptiste Doumenjou <jb.doumenjou@gmail.com>
2019-08-26 03:20:06 -07:00
Julien Salleyron 6fed76a687 WeightedRoundRobin load balancer
Co-authored-by: Ludovic Fernandez <ldez@users.noreply.github.com>
2019-08-26 01:30:05 -07:00
Ludovic Fernandez 51f7d9a07f Split runtime.go 2019-08-14 08:28:04 -07:00
Fernandez Ludovic 4c5e7a238d chore: go module 2019-08-12 05:06:04 -07:00
Jean-Baptiste Doumenjou 91e63dea47 Apply the case of the CLI flags for the configuration 2019-08-05 06:22:03 -07:00
Daniel Tomcej cd164de776 Add Feature-Policy header support 2019-07-29 07:12:05 -07:00
Ludovic Fernandez 1800b0b69c Improve error on router without service.
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2019-07-19 16:42:04 +02:00
mpl 092aa8fa6d API: remove configuration of Entrypoint and Middlewares
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2019-07-19 12:28:07 +02:00
Ludovic Fernandez f75f73f3d2 Certificate resolvers.
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
Co-authored-by: Jean-Baptiste Doumenjou <jb.doumenjou@gmail.com>
2019-07-19 11:52:04 +02:00
Julien Salleyron e3627e9cba Disable RateLimit temporarily 2019-07-19 10:50:05 +02:00
mpl 6fdd48509e config: deal with multiple errors and their criticality
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2019-07-15 17:04:04 +02:00
Ludovic Fernandez 093658836e Restrict traefik.toml to static configuration. 2019-07-15 10:22:03 +02:00
Daniel Tomcej 51486b18fa Enhance REST provider 2019-07-13 01:24:03 +02:00
Jean-Baptiste Doumenjou 2c7cfd1c68 Expand Client Auth Type configuration 2019-07-12 17:50:04 +02:00
Ludovic Fernandez c8bf8e896a Move dynamic config into a dedicated package. 2019-07-10 09:26:04 +02:00
Michael 09cc1161c9 Generate deepcopy for configuration struct 2019-07-09 15:18:04 +02:00
Jean-Baptiste Doumenjou 8ab33db51a Renamed kubernetes provider in kubernetesIngress provider 2019-07-08 21:36:03 +02:00
Ludovic Fernandez 0ee5d3d83f Automatic generation of the doc for the CLI flags and env vars. 2019-07-08 11:00:04 +02:00
Ludovic Fernandez c7d336f958 Use the same case everywhere 2019-07-01 11:30:05 +02:00
Máté Szabó f6436663eb Make HTTP Keep-Alive timeout configurable for backend connections 2019-06-28 00:36:04 +02:00
Michael 84d7c65039 Improve tracing 2019-06-28 00:16:04 +02:00
Ludovic Fernandez 4245096be4 Define a TLS section to group TLS, TLSOptions, and TLSStores.
Co-authored-by: Jean-Baptiste Doumenjou <jb.doumenjou@gmail.com>
2019-06-27 23:58:03 +02:00
Ludovic Fernandez e69d4cba88 Support YAML for the dynamic configuration. 2019-06-26 18:18:04 +02:00
Ludovic Fernandez a918dcd5a4 Filter env vars configuration 2019-06-21 10:08:04 +02:00
Ludovic Fernandez adc9a65ae3 Use name@provider instead of provider@name. 2019-06-21 09:54:04 +02:00
Ludovic Fernandez 1e779f7135 Fix some CLI bugs 2019-06-21 09:40:04 +02:00
Ludovic Fernandez fe68e9e243 New constraints management.
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2019-06-21 09:24:04 +02:00
Ludovic Fernandez e9792b446f Change the provider separator from . to @ 2019-06-20 00:40:05 +02:00
mpl 429b1d8574 API: new contract
Co-authored-by: Ludovic Fernandez <ldez@users.noreply.github.com>
2019-06-19 18:34:04 +02:00
Ludovic Fernandez be888b59a6 doc: fix middleware names for CRD. 2019-06-18 09:50:05 +02:00
Jean-Baptiste Doumenjou 85ce16b34f Define TLS options on the Router configuration
Co-authored-by: juliens <julien@containo.us>
2019-06-17 18:14:08 +02:00
Ludovic Fernandez 8d7eccad5d New static configuration loading system.
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2019-06-17 11:48:05 +02:00
Amir Keibi d18edd6f77 HttpOnly and Secure flags on the affinity cookie 2019-06-13 00:42:06 +02:00
mpl c4df78b4b9 Add support for TCP (in kubernetes CRD)
Co-authored-by: Jean-Baptiste Doumenjou <jb.doumenjou@gmail.com>
2019-06-11 15:12:04 +02:00
Julien Salleyron 518a37e776 rework loadbalancer support 2019-06-05 22:18:06 +02:00
Ludovic Fernandez ffe69c67fc Entry points CLI description. 2019-05-27 18:02:06 +02:00
mpl f6df556eb0 API: expose runtime representation
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
Co-authored-by: Jean-Baptiste Doumenjou <jb.doumenjou@gmail.com>
2019-05-16 10:58:06 +02:00
Alex Antonov 9cf6827ccc Added support for Haystack tracing 2019-05-09 00:14:04 +02:00
Michael 15e78da7eb Minor fix in documentation 2019-04-24 18:04:08 +02:00
Manuel Zapf e1d097ea20 Add Rancher provider again 2019-04-05 12:22:04 +02:00
Daniel Tomcej d2b38e6ac4 Enable CORS configuration 2019-04-02 10:40:04 +02:00
Julien Salleyron 0f2c4fb5f4 Add support for tcp labels in docker provider 2019-03-21 15:22:06 +01:00
Ludovic Fernandez 72ffa91fe0 Clean old 2019-03-18 11:30:07 +01:00
Michael 5d050ae3ac Allow user to configure traefik log 2019-03-15 15:46:06 +01:00
Ludovic Fernandez f1b085fa36 Move code to pkg 2019-03-15 09:42:03 +01:00