Prepare release v3.7.0-ea.1

This commit is contained in:
Michael
2026-03-12 11:26:04 +01:00
committed by GitHub
parent b9739c20f9
commit 67c64ed9b2
57 changed files with 580 additions and 391 deletions
+1 -1
View File
@@ -9,7 +9,7 @@ env:
CGO_ENABLED: 0 CGO_ENABLED: 0
VERSION: ${{ github.ref_name }} VERSION: ${{ github.ref_name }}
TRAEFIKER_EMAIL: "traefiker@traefik.io" TRAEFIKER_EMAIL: "traefiker@traefik.io"
CODENAME: ramequin CODENAME: langres
jobs: jobs:
+189
View File
@@ -1,3 +1,192 @@
## [v3.7.0-ea.1](https://github.com/traefik/traefik/tree/v3.7.0-ea.1) (2026-03-11)
[All Commits](https://github.com/traefik/traefik/compare/v3.6.0-rc1...v3.7.0-ea.1)
**Enhancements:**
- **[accesslogs, otel]** Allow Stdio access logs alongsige OTLP logging ([#12307](https://github.com/traefik/traefik/pull/12307) by [Mulgish](https://github.com/Mulgish))
- **[acme]** Add CertificateTimeout ACME configuration option ([#12278](https://github.com/traefik/traefik/pull/12278) by [ceko](https://github.com/ceko))
- **[k8s/ingress-nginx]** Support nginx.ingress.kubernetes.io/allowlist-source-range ([#12659](https://github.com/traefik/traefik/pull/12659) by [ris-tlp](https://github.com/ris-tlp))
- **[k8s/crd]** Add ingressClassName field to the CRDs spec ([#12313](https://github.com/traefik/traefik/pull/12313) by [kkrypt0nn](https://github.com/kkrypt0nn))
- **[k8s/crd]** Service failover support in TraefikService CRD ([#12733](https://github.com/traefik/traefik/pull/12733) by [jspdown](https://github.com/jspdown))
- **[k8s/crd, service]** Support cipher suites configuration with ServersTransport ([#11965](https://github.com/traefik/traefik/pull/11965) by [NEwa-05](https://github.com/NEwa-05))
- **[k8s/ingress, middleware, k8s/crd, service, k8s/gatewayapi]** Services middleware and Gateway API filters on HTTP backends ([#12544](https://github.com/traefik/traefik/pull/12544) by [juliens](https://github.com/juliens))
- **[k8s/ingress-nginx]** Add nginx.ingress.kubernetes.io/proxy-connect-timeout annotation ([#12572](https://github.com/traefik/traefik/pull/12572) by [gndz07](https://github.com/gndz07))
- **[k8s/ingress-nginx]** Add rewrite-target nginx annotations support ([#12534](https://github.com/traefik/traefik/pull/12534) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Add support for app-root nginx annotation ([#12576](https://github.com/traefik/traefik/pull/12576) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Add support for auth-signin annotation ([#12502](https://github.com/traefik/traefik/pull/12502) by [DesalLama](https://github.com/DesalLama))
- **[k8s/ingress-nginx]** Add support for from-to-www-redirect NGINX annotation ([#12610](https://github.com/traefik/traefik/pull/12610) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Add support for proxy-read-timeout and proxy-send-timeout NGINX annotations ([#12630](https://github.com/traefik/traefik/pull/12630) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Add support for session-cookie-expires nginx annotation ([#12558](https://github.com/traefik/traefik/pull/12558) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Add support for upstream-hash-by NGINX annotation ([#12749](https://github.com/traefik/traefik/pull/12749) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Allow entry points to be specified on Nginx Ingresses ([#12727](https://github.com/traefik/traefik/pull/12727) by [ajacques](https://github.com/ajacques))
- **[k8s/ingress-nginx]** Implement proxy-http-version annotation ([#12743](https://github.com/traefik/traefik/pull/12743) by [KshitijBharde](https://github.com/KshitijBharde))
- **[k8s/ingress-nginx]** Nginx x-forwarded-prefix annotation ([#12697](https://github.com/traefik/traefik/pull/12697) by [nandorKollar](https://github.com/nandorKollar))
- **[k8s/ingress-nginx]** Support auth-tls-secret and auth-tls-verify-client annotations ([#12595](https://github.com/traefik/traefik/pull/12595) by [gndz07](https://github.com/gndz07))
- **[k8s/ingress-nginx]** Support limit-rpm annotation for ingress-nginx ([#12703](https://github.com/traefik/traefik/pull/12703) by [Ph4rell](https://github.com/Ph4rell))
- **[k8s/ingress-nginx]** Support limit-rps annotation for Ingress NGINX ([#12709](https://github.com/traefik/traefik/pull/12709) by [amazon7737](https://github.com/amazon7737))
- **[k8s/ingress-nginx]** Support NGINX buffering annotations ([#12459](https://github.com/traefik/traefik/pull/12459) by [blasko03](https://github.com/blasko03))
- **[k8s/ingress-nginx]** Support NGINX canary annotations ([#12739](https://github.com/traefik/traefik/pull/12739) by [kevinpollet](https://github.com/kevinpollet))
- **[k8s/ingress-nginx]** Support NGINX custom-headers annotation ([#12414](https://github.com/traefik/traefik/pull/12414) by [nandorKollar](https://github.com/nandorKollar))
- **[k8s/ingress-nginx]** Support NGINX upstream-vhost annotation ([#12412](https://github.com/traefik/traefik/pull/12412) by [nandorKollar](https://github.com/nandorKollar))
- **[k8s/ingress-nginx]** Support NGINX whitelist-source-range annotation ([#12423](https://github.com/traefik/traefik/pull/12423) by [blasko03](https://github.com/blasko03))
- **[k8s/ingress-nginx]** Support permanent-redirect and temporal-redirect annotations ([#12561](https://github.com/traefik/traefik/pull/12561) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Support proxy-next-upstream* annotations ([#12710](https://github.com/traefik/traefik/pull/12710) by [gndz07](https://github.com/gndz07))
- **[k8s/ingress-nginx]** Support server-alias annotation for Ingress NGINX ([#12707](https://github.com/traefik/traefik/pull/12707) by [amazon7737](https://github.com/amazon7737))
- **[k8s/ingress-nginx]** Support upstream-keepalive-timeout ([#12708](https://github.com/traefik/traefik/pull/12708) by [jcob-sikorski](https://github.com/jcob-sikorski))
- **[k8s/ingress-nginx]** Add support for variable interpolation in auth-signin NGINX annotation ([#12640](https://github.com/traefik/traefik/pull/12640) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Implement server-snippet and configuration-snippet annotations ([#12715](https://github.com/traefik/traefik/pull/12715) by [juliens](https://github.com/juliens))
- **[k8s/ingress-nginx]** Add custom-http-errors and default-backend annotations ([#12637](https://github.com/traefik/traefik/pull/12637) by [juliens](https://github.com/juliens))
- **[k8s/ingress-nginx]** Support auth-tls-pass-certificate-to-upstream annotation ([#12629](https://github.com/traefik/traefik/pull/12629) by [gndz07](https://github.com/gndz07))
- **[metrics]** Support file path for metrics.influxdb2.token option ([#12458](https://github.com/traefik/traefik/pull/12458) by [barhun](https://github.com/barhun))
- **[middleware]** Add encodedCharacters middleware ([#12555](https://github.com/traefik/traefik/pull/12555) by [gndz07](https://github.com/gndz07))
- **[middleware]** Enable retries based on HTTP response status codes, timeout, and non-idempotent methods ([#12667](https://github.com/traefik/traefik/pull/12667) by [LBF38](https://github.com/LBF38))
- **[middleware, authentication]** Add authSignInURL in forward auth middleware ([#12293](https://github.com/traefik/traefik/pull/12293) by [kyounghunJang](https://github.com/kyounghunJang))
- **[server]** Add global option to disable X-Forwarded-For appending ([#12374](https://github.com/traefik/traefik/pull/12374) by [lbenguigui](https://github.com/lbenguigui))
- **[server]** Replace Split in loops with more efficient SplitSeq ([#12316](https://github.com/traefik/traefik/pull/12316) by [boqishan](https://github.com/boqishan))
- **[service]** Failover according to response status code ([#12596](https://github.com/traefik/traefik/pull/12596) by [lbenguigui](https://github.com/lbenguigui))
- **[tls]** Make TLSStore gracefully handle missing secrets ([#12522](https://github.com/traefik/traefik/pull/12522) by [david-garcia-garcia](https://github.com/david-garcia-garcia))
- **[webui]** Add dashboard name configuration ([#12410](https://github.com/traefik/traefik/pull/12410) by [gndz07](https://github.com/gndz07))
- **[webui]** Web UI dashboard improvements ([#12236](https://github.com/traefik/traefik/pull/12236) by [gndz07](https://github.com/gndz07))
- **[webui]** Details pages UI improvement ([#12377](https://github.com/traefik/traefik/pull/12377) by [gndz07](https://github.com/gndz07))
- Use unicode.MaxASCII for clearer ASCII check ([#12741](https://github.com/traefik/traefik/pull/12741) by [1911860538](https://github.com/1911860538))
**Bug fixes:**
- **[acme]** Add missing renew options ([#12467](https://github.com/traefik/traefik/pull/12467) by [ldez](https://github.com/ldez))
- **[acme]** Add timeout to ACME-TLS/1 challenge handshake ([#12516](https://github.com/traefik/traefik/pull/12516) by [LBF38](https://github.com/LBF38))
- **[acme]** Alter TLS renewal period ([#12479](https://github.com/traefik/traefik/pull/12479) by [LtHummus](https://github.com/LtHummus))
- **[acme]** Bump github.com/go-acme/lego/v4 to v4.28.0 ([#12218](https://github.com/traefik/traefik/pull/12218) by [ldez](https://github.com/ldez))
- **[acme]** Bump github.com/go-acme/lego/v4 to v4.29.0 ([#12333](https://github.com/traefik/traefik/pull/12333) by [ldez](https://github.com/ldez))
- **[acme]** Bump github.com/go-acme/lego/v4 to v4.30.1 ([#12432](https://github.com/traefik/traefik/pull/12432) by [ldez](https://github.com/ldez))
- **[acme]** Bump github.com/go-acme/lego/v4 to v4.31.0 ([#12529](https://github.com/traefik/traefik/pull/12529) by [ldez](https://github.com/ldez))
- **[acme]** Bump github.com/go-acme/lego/v4 to v4.32.0 ([#12702](https://github.com/traefik/traefik/pull/12702) by [ldez](https://github.com/ldez))
- **[acme]** Remove invalid private key in log ([#12574](https://github.com/traefik/traefik/pull/12574) by [juliens](https://github.com/juliens))
- **[acme]** Replace hardcoded references to LetsEncrypt in log messages ([#12464](https://github.com/traefik/traefik/pull/12464) by [schildbach](https://github.com/schildbach))
- **[cli]** Fix health check ping ([#12512](https://github.com/traefik/traefik/pull/12512) by [olamilekan000](https://github.com/olamilekan000))
- **[docker]** Auto-negotiate Docker API Version ([#12256](https://github.com/traefik/traefik/pull/12256) by [felixbuenemann](https://github.com/felixbuenemann))
- **[docker]** Bump Docker and OpenTelemetry dependencies ([#12761](https://github.com/traefik/traefik/pull/12761) by [mmatur](https://github.com/mmatur))
- **[docker, docker/swarm]** Auto-negotiate Docker API version ([#12262](https://github.com/traefik/traefik/pull/12262) by [kevinpollet](https://github.com/kevinpollet))
- **[fastproxy]** Bump github.com/valyala/fasthttp to v1.69.0 ([#12763](https://github.com/traefik/traefik/pull/12763) by [kevinpollet](https://github.com/kevinpollet))
- **[healthcheck]** Reject absolute URL in healthcheck path configuration ([#12653](https://github.com/traefik/traefik/pull/12653) by [rtribotte](https://github.com/rtribotte))
- **[healthcheck]** Validate healthcheck path configuration ([#12642](https://github.com/traefik/traefik/pull/12642) by [rtribotte](https://github.com/rtribotte))
- **[healthcheck, grpc]** Remove path parsing with grpc healthcheck ([#12760](https://github.com/traefik/traefik/pull/12760) by [rtribotte](https://github.com/rtribotte))
- **[http3]** Bump github.com/quic-go/quic-go to v0.57.0 ([#12308](https://github.com/traefik/traefik/pull/12308) by [GreyXor](https://github.com/GreyXor))
- **[http3]** Bump github.com/quic-go/quic-go to v0.57.1 ([#12319](https://github.com/traefik/traefik/pull/12319) by [GreyXor](https://github.com/GreyXor))
- **[http3]** Bump github.com/quic-go/quic-go to v0.58.0 ([#12448](https://github.com/traefik/traefik/pull/12448) by [GreyXor](https://github.com/GreyXor))
- **[http3]** Bump github.com/quic-go/quic-go to v0.59.0 ([#12553](https://github.com/traefik/traefik/pull/12553) by [jnoordsij](https://github.com/jnoordsij))
- **[k8s]** Fix condition used for serving and fenced endpoints ([#12521](https://github.com/traefik/traefik/pull/12521) by [LBF38](https://github.com/LBF38))
- **[k8s/gatewayapi]** Fix Gateway API router's rules ([#12753](https://github.com/traefik/traefik/pull/12753) by [rtribotte](https://github.com/rtribotte))
- **[k8s/ingress]** Fix panic for empty defaultBackend and defaultBackend without resources ([#12509](https://github.com/traefik/traefik/pull/12509) by [gndz07](https://github.com/gndz07))
- **[k8s/ingress-nginx]** Add AllowCrossNamespaceResources and GlobalAllowedResponseHeader options to control custom headers annotations ([#12680](https://github.com/traefik/traefik/pull/12680) by [rtribotte](https://github.com/rtribotte))
- **[k8s/ingress-nginx]** Deprecate Kubernetes Ingress NGINX provider experimental flag ([#12286](https://github.com/traefik/traefik/pull/12286) by [rtribotte](https://github.com/rtribotte))
- **[k8s/ingress-nginx]** Fix nginx rewrite target ([#12730](https://github.com/traefik/traefik/pull/12730) by [mmatur](https://github.com/mmatur))
- **[k8s/ingress-nginx]** Fix NGINX sslredirect annotation support ([#12387](https://github.com/traefik/traefik/pull/12387) by [rtribotte](https://github.com/rtribotte))
- **[k8s/ingress-nginx]** Fix nginx.ingress.kubernetes.io/proxy-ssl-verify annotation support ([#12351](https://github.com/traefik/traefik/pull/12351) by [rtribotte](https://github.com/rtribotte))
- **[k8s/ingress-nginx]** Fix SSL redirect to match NGINX behavior ([#12361](https://github.com/traefik/traefik/pull/12361) by [mmatur](https://github.com/mmatur))
- **[k8s/ingress-nginx]** Fix the service name for ingress-nginx provider ([#12352](https://github.com/traefik/traefik/pull/12352) by [mmatur](https://github.com/mmatur))
- **[k8s/ingress-nginx]** Fix use-regex nginx annotation ([#12531](https://github.com/traefik/traefik/pull/12531) by [LBF38](https://github.com/LBF38))
- **[k8s/ingress-nginx]** Prevent Ingress Nginx provider http router to attach to an entrypoint with TLS ([#12528](https://github.com/traefik/traefik/pull/12528) by [rtribotte](https://github.com/rtribotte))
- **[metrics, tracing, accesslogs]** Fix ObservabilityConfig SetDefaults ([#12636](https://github.com/traefik/traefik/pull/12636) by [mmatur](https://github.com/mmatur))
- **[middleware]** Fix case sensitivity on x-forwarded headers for Connection ([#12690](https://github.com/traefik/traefik/pull/12690) by [LBF38](https://github.com/LBF38))
- **[middleware]** Fix HasSecureHeadersDefined returning false when stsSeconds is 0 ([#12684](https://github.com/traefik/traefik/pull/12684) by [veeceey](https://github.com/veeceey))
- **[middleware, authentication]** Add maxResponseBodySize configuration to forwardAuth middleware ([#12694](https://github.com/traefik/traefik/pull/12694) by [gndz07](https://github.com/gndz07))
- **[middleware, authentication]** Change ForwardAuth error log level from DEBUG to ERROR ([#12324](https://github.com/traefik/traefik/pull/12324) by [murataslan1](https://github.com/murataslan1))
- **[middleware, authentication]** Handle empty/missing User-Agent header ([#12545](https://github.com/traefik/traefik/pull/12545) by [a-stangl](https://github.com/a-stangl))
- **[middleware, k8s, k8s/ingress-nginx]** Fix from to www nginx annotation ([#12736](https://github.com/traefik/traefik/pull/12736) by [mmatur](https://github.com/mmatur))
- **[middleware, k8s/ingress-nginx]** Fix custom error pages behavior for ingress-nginx provider ([#12738](https://github.com/traefik/traefik/pull/12738) by [mmatur](https://github.com/mmatur))
- **[otel]** Bump go.opentelemetry.io/otel dependencies ([#12754](https://github.com/traefik/traefik/pull/12754) by [rtribotte](https://github.com/rtribotte))
- **[plugins]** Validate plugin module name ([#12291](https://github.com/traefik/traefik/pull/12291) by [kevinpollet](https://github.com/kevinpollet))
- **[redis]** Fix mutually exclusive verification for Redis ([#12442](https://github.com/traefik/traefik/pull/12442) by [juliens](https://github.com/juliens))
- **[server]** Bump golang.org/x/crypto to v0.45.0 ([#12296](https://github.com/traefik/traefik/pull/12296) by [kevinpollet](https://github.com/kevinpollet))
- **[server]** Bump golang.org/x/net to v0.51.0 ([#12756](https://github.com/traefik/traefik/pull/12756) by [kevinpollet](https://github.com/kevinpollet))
- **[server]** Filter unknown nodes with file and env for the deprecation loader ([#12227](https://github.com/traefik/traefik/pull/12227) by [rtribotte](https://github.com/rtribotte))
- **[server]** Fix deny encoded characters ([#12454](https://github.com/traefik/traefik/pull/12454) by [rtribotte](https://github.com/rtribotte))
- **[server]** Fix deny encoded characters ([#12457](https://github.com/traefik/traefik/pull/12457) by [rtribotte](https://github.com/rtribotte))
- **[server]** Fix multi-layer routing with models ([#12258](https://github.com/traefik/traefik/pull/12258) by [juliens](https://github.com/juliens))
- **[server]** Fix TLS handshake error handling ([#12692](https://github.com/traefik/traefik/pull/12692) by [juliens](https://github.com/juliens))
- **[server]** Make encoded character options opt-in ([#12540](https://github.com/traefik/traefik/pull/12540) by [gndz07](https://github.com/gndz07))
- **[server]** Make the aggregator compute provider namespace for router's parentRefs ([#12235](https://github.com/traefik/traefik/pull/12235) by [rtribotte](https://github.com/rtribotte))
- **[server]** Print access logs for rejected requests and warn about new behavior ([#12424](https://github.com/traefik/traefik/pull/12424) by [kevinpollet](https://github.com/kevinpollet))
- **[server]** Print access logs for rejected requests and warn about new behavior ([#12426](https://github.com/traefik/traefik/pull/12426) by [rtribotte](https://github.com/rtribotte))
- **[server]** Reject suspicious encoded characters ([#12360](https://github.com/traefik/traefik/pull/12360) by [rtribotte](https://github.com/rtribotte))
- **[server]** Remove conn deadline after STARTTLS negociation ([#12639](https://github.com/traefik/traefik/pull/12639) by [rtribotte](https://github.com/rtribotte))
- **[service]** Avoid recursion with services ([#12591](https://github.com/traefik/traefik/pull/12591) by [juliens](https://github.com/juliens))
- **[tls]** Fix verifyServerCertMatchesURI function behavior ([#12575](https://github.com/traefik/traefik/pull/12575) by [kevinpollet](https://github.com/kevinpollet))
- **[tls, server]** Cap TLS record length to RFC 8446 limit in ClientHello peeking ([#12638](https://github.com/traefik/traefik/pull/12638) by [mmatur](https://github.com/mmatur))
- **[tracing, otel]** Use ParentBased sampler to respect parent span sampling decision ([#12403](https://github.com/traefik/traefik/pull/12403) by [xe-leon](https://github.com/xe-leon))
- **[udp]** Revert "Avoid allocations in readLoop by using sync.Pool" ([#12267](https://github.com/traefik/traefik/pull/12267) by [kevinpollet](https://github.com/kevinpollet))
- **[webui]** Bump dependencies of documentation and webui ([#12581](https://github.com/traefik/traefik/pull/12581) by [gndz07](https://github.com/gndz07))
- **[webui]** Fix basePath validation for dashboard template ([#12729](https://github.com/traefik/traefik/pull/12729) by [gndz07](https://github.com/gndz07))
- **[webui]** Fix blocked navigation on Safari ([#12231](https://github.com/traefik/traefik/pull/12231) by [gndz07](https://github.com/gndz07))
- **[webui]** Fix missing type definition ([#12780](https://github.com/traefik/traefik/pull/12780) by [gndz07](https://github.com/gndz07))
- **[webui]** Fix priority display in dashboard and ACME bypass redirect ([#12740](https://github.com/traefik/traefik/pull/12740) by [mmatur](https://github.com/mmatur))
- **[webui]** Restore remote Upgrade to Hub button web component ([#12219](https://github.com/traefik/traefik/pull/12219) by [gndz07](https://github.com/gndz07))
- **[webui]** Use url.Parse to validate X-Forwarded-Prefix value ([#12643](https://github.com/traefik/traefik/pull/12643) by [kevinpollet](https://github.com/kevinpollet))
- **[webui]** Validate X-Forwarded-Prefix value for dashboard redirect ([#12514](https://github.com/traefik/traefik/pull/12514) by [LBF38](https://github.com/LBF38))
**Documentation:**
- **[acme]** Add missing ACME options and clean up table for more visibility ([#12208](https://github.com/traefik/traefik/pull/12208) by [sheddy-traefik](https://github.com/sheddy-traefik))
- **[api]** Fix typo in API dashboard configuration instructions ([#12335](https://github.com/traefik/traefik/pull/12335) by [NAICOLAS](https://github.com/NAICOLAS))
- **[docker]** Add documentation for loadbalancer.server.url in Docker and Swarm providers ([#12289](https://github.com/traefik/traefik/pull/12289) by [webash](https://github.com/webash))
- **[docker]** Update docker in-depth setup guide ([#12682](https://github.com/traefik/traefik/pull/12682) by [mdevino](https://github.com/mdevino))
- **[docker/swarm]** Update swarm.md traefik version ([#12508](https://github.com/traefik/traefik/pull/12508) by [DBouraoui](https://github.com/DBouraoui))
- **[k8s]** Fix Gateway API version and the list of features supported ([#12254](https://github.com/traefik/traefik/pull/12254) by [nmengin](https://github.com/nmengin))
- **[k8s]** Fix Kubernetes reference yml file ([#12406](https://github.com/traefik/traefik/pull/12406) by [mmatur](https://github.com/mmatur))
- **[k8s]** Fix kubernetes.md with correct http redirections ([#12603](https://github.com/traefik/traefik/pull/12603) by [MartenM](https://github.com/MartenM))
- **[k8s]** Fix Nginx provider documentation ([#12266](https://github.com/traefik/traefik/pull/12266) by [nmengin](https://github.com/nmengin))
- **[k8s]** Improve the K8S multi-tenancy security note ([#12444](https://github.com/traefik/traefik/pull/12444) by [nmengin](https://github.com/nmengin))
- **[k8s]** Make labelSelector option casing more consistent ([#12658](https://github.com/traefik/traefik/pull/12658) by [holysoles](https://github.com/holysoles))
- **[k8s, k8s/ingress-nginx]** Add configmaps right to Ingress NGINX RBAC ([#12557](https://github.com/traefik/traefik/pull/12557) by [kevinpollet](https://github.com/kevinpollet))
- **[k8s/gatewayapi]** Fix links of Helm chart values reference to providers.kubernetesGateway.enabled ([#12315](https://github.com/traefik/traefik/pull/12315) by [shouhei](https://github.com/shouhei))
- **[k8s/ingress, k8s]** Fix Kubernetes Ingress provider documentation ([#12443](https://github.com/traefik/traefik/pull/12443) by [nmengin](https://github.com/nmengin))
- **[k8s/ingress-nginx]** Add auth-signin to unsupported nginx annotations list ([#12370](https://github.com/traefik/traefik/pull/12370) by [fibsifan](https://github.com/fibsifan))
- **[k8s/ingress-nginx]** Add RBAC documentation for Ingress NGINX provider ([#12445](https://github.com/traefik/traefik/pull/12445) by [nmn3m](https://github.com/nmn3m))
- **[k8s/ingress-nginx]** Add temporary note to advertise the incoming NGINX annotations ([#12699](https://github.com/traefik/traefik/pull/12699) by [nmengin](https://github.com/nmengin))
- **[k8s/ingress-nginx]** Fix default value of ingress-nginx provider in documentation ([#12328](https://github.com/traefik/traefik/pull/12328) by [mloiseleur](https://github.com/mloiseleur))
- **[k8s/ingress-nginx]** Fix ingress-nginx annotations documentation ([#12510](https://github.com/traefik/traefik/pull/12510) by [nmengin](https://github.com/nmengin))
- **[k8s/ingress-nginx]** Improve ingress-nginx provider documentation ([#12288](https://github.com/traefik/traefik/pull/12288) by [sheddy-traefik](https://github.com/sheddy-traefik))
- **[k8s/ingress-nginx]** Improve the configuration options display of the Kubernetes ingress-nginx provider ([#12297](https://github.com/traefik/traefik/pull/12297) by [mloiseleur](https://github.com/mloiseleur))
- **[k8s/ingress-nginx]** NGINX Ingress Controller to Traefik Migration Guide ([#12318](https://github.com/traefik/traefik/pull/12318) by [sheddy-traefik](https://github.com/sheddy-traefik))
- **[middleware]** Correct documentation for Digest auth ([#12651](https://github.com/traefik/traefik/pull/12651) by [Zash](https://github.com/Zash))
- **[middleware]** Fix default encodings in compress middleware ([#12216](https://github.com/traefik/traefik/pull/12216) by [Belphemur](https://github.com/Belphemur))
- **[middleware, k8s/crd]** Fix the errors middleware's document for Kubernetes CRD ([#12600](https://github.com/traefik/traefik/pull/12600) by [yuito-it](https://github.com/yuito-it))
- **[service]** Fix loadbalancer doc for highest random weight ([#12283](https://github.com/traefik/traefik/pull/12283) by [ozon2](https://github.com/ozon2))
- **[tls]** Clarify SNI selection ([#12482](https://github.com/traefik/traefik/pull/12482) by [AnuragEkkati](https://github.com/AnuragEkkati))
- Add @gndz07 as a current maintainer ([#12594](https://github.com/traefik/traefik/pull/12594) by [emilevauge](https://github.com/emilevauge))
- Add a Breaking change note to the changelog ([#12398](https://github.com/traefik/traefik/pull/12398) by [nmengin](https://github.com/nmengin))
- Add documentation about checkNewVersion ([#12298](https://github.com/traefik/traefik/pull/12298) by [darkweaver87](https://github.com/darkweaver87))
- Add missing `.http` to TOML table names ([#12713](https://github.com/traefik/traefik/pull/12713) by [Darsstar](https://github.com/Darsstar))
- Add product comparison matrix and features page ([#12037](https://github.com/traefik/traefik/pull/12037) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Bring back security section on API & Dashboard documentation page ([#12507](https://github.com/traefik/traefik/pull/12507) by [gndz07](https://github.com/gndz07))
- Clarify doc about encoded characters rejection ([#12391](https://github.com/traefik/traefik/pull/12391) by [rtribotte](https://github.com/rtribotte))
- Clean Up Menu Entries & Update Expose Overview ([#12405](https://github.com/traefik/traefik/pull/12405) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Correct encoded characters allowance in entrypoints.md ([#12679](https://github.com/traefik/traefik/pull/12679) by [Apflkuacha](https://github.com/Apflkuacha))
- Correctly Format the HTTP Service Documentation ([#12311](https://github.com/traefik/traefik/pull/12311) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Document negative priority support for routers ([#12505](https://github.com/traefik/traefik/pull/12505) by [understood-the-assignment](https://github.com/understood-the-assignment))
- Document Path matcher placeholder removal in v3 migration guide ([#12570](https://github.com/traefik/traefik/pull/12570) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Fix API basepath option documentation ([#12744](https://github.com/traefik/traefik/pull/12744) by [nmengin](https://github.com/nmengin))
- Fix broken links in TCP Service and HTTP Router documentation ([#12215](https://github.com/traefik/traefik/pull/12215) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Fix code copy button positioning ([#12520](https://github.com/traefik/traefik/pull/12520) by [AnuragEkkati](https://github.com/AnuragEkkati))
- Fix encoded characters entryPoint option documentation ([#12384](https://github.com/traefik/traefik/pull/12384) by [rtribotte](https://github.com/rtribotte))
- Fix encoded characters option documentation ([#12373](https://github.com/traefik/traefik/pull/12373) by [kevinpollet](https://github.com/kevinpollet))
- Fix encodedCharacters entryPoint option documentation ([#12385](https://github.com/traefik/traefik/pull/12385) by [rtribotte](https://github.com/rtribotte))
- Fix incorrect TOML example in entrypoints docs ([#12711](https://github.com/traefik/traefik/pull/12711) by [mfmfuyu](https://github.com/mfmfuyu))
- Fix link description in Traefik Proxy documentation ([#12488](https://github.com/traefik/traefik/pull/12488) by [schaerfo](https://github.com/schaerfo))
- Fix Menu Item Naming ([#12431](https://github.com/traefik/traefik/pull/12431) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Fix migration guide indentation ([#12365](https://github.com/traefik/traefik/pull/12365) by [kevinpollet](https://github.com/kevinpollet))
- Fix migration guide URLs in deprecation notice ([#12430](https://github.com/traefik/traefik/pull/12430) by [alexmar07](https://github.com/alexmar07))
- Fix typo in kubernetes.md ([#12515](https://github.com/traefik/traefik/pull/12515) by [EdwardSalkeld](https://github.com/EdwardSalkeld))
- Fix typo in v3.6 migration guide ([#12212](https://github.com/traefik/traefik/pull/12212) by [jnoordsij](https://github.com/jnoordsij))
- Fix typo on JWT documentation ([#12616](https://github.com/traefik/traefik/pull/12616) by [mdevino](https://github.com/mdevino))
- Improve Service Reference page ([#12541](https://github.com/traefik/traefik/pull/12541) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Improve the structure of the routing reference pages ([#12429](https://github.com/traefik/traefik/pull/12429) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Increased content width in documentation ([#12632](https://github.com/traefik/traefik/pull/12632) by [tobiasge](https://github.com/tobiasge))
- Remove extra dots in migration guide ([#12573](https://github.com/traefik/traefik/pull/12573) by [rtribotte](https://github.com/rtribotte))
- Remove extraneous dots in migration guide ([#12571](https://github.com/traefik/traefik/pull/12571) by [dathbe](https://github.com/dathbe))
- Restore documentation on http.maxHeaderBytes ([#12440](https://github.com/traefik/traefik/pull/12440) by [mloiseleur](https://github.com/mloiseleur))
- Split Expose User Guides & Add Multi-Layer Routing Section ([#12238](https://github.com/traefik/traefik/pull/12238) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Update Configuration Overview Page ([#12202](https://github.com/traefik/traefik/pull/12202) by [sheddy-traefik](https://github.com/sheddy-traefik))
- Update SECURITY.md ([#12304](https://github.com/traefik/traefik/pull/12304) by [cwayne18](https://github.com/cwayne18))
- Update SECURITY.md to streamline information ([#12310](https://github.com/traefik/traefik/pull/12310) by [emilevauge](https://github.com/emilevauge))
## [v3.6.10](https://github.com/traefik/traefik/tree/v3.6.10) (2026-03-06) ## [v3.6.10](https://github.com/traefik/traefik/tree/v3.6.10) (2026-03-06)
[All Commits](https://github.com/traefik/traefik/compare/v3.6.9...v3.6.10) [All Commits](https://github.com/traefik/traefik/compare/v3.6.9...v3.6.10)
+1 -1
View File
@@ -100,7 +100,7 @@ func runCmd(staticConfiguration *static.Configuration) error {
log.Warn().Msg("Traefik can reject some encoded characters in the request path." + log.Warn().Msg("Traefik can reject some encoded characters in the request path." +
"When your backend is not fully compliant with [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986)," + "When your backend is not fully compliant with [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986)," +
"it is recommended to set these options to `false` to avoid split-view situation." + "it is recommended to set these options to `false` to avoid split-view situation." +
"Refer to the documentation for more details: https://doc.traefik.io/traefik/v3.6/migrate/v3/#encoded-characters-configuration-default-values") "Refer to the documentation for more details: https://doc.traefik.io/traefik/v3.7/migrate/v3/#encoded-characters-configuration-default-values")
http.DefaultTransport.(*http.Transport).Proxy = http.ProxyFromEnvironment http.DefaultTransport.(*http.Transport).Proxy = http.ProxyFromEnvironment
@@ -77,7 +77,7 @@ traefik --help
# or # or
docker run traefik[:version] --help docker run traefik[:version] --help
# ex: docker run traefik:v3.6 --help # ex: docker run traefik:v3.7 --help
``` ```
Check the [CLI reference](../reference/install-configuration/configuration-options.md "Link to CLI reference overview") for an overview about all available arguments. Check the [CLI reference](../reference/install-configuration/configuration-options.md "Link to CLI reference overview") for an overview about all available arguments.
+2 -2
View File
@@ -36,7 +36,7 @@ This configuration:
# docker-compose.yml # docker-compose.yml
services: services:
traefik: traefik:
image: traefik:v3.6 image: traefik:v3.7
command: command:
- "--api.insecure=true" - "--api.insecure=true"
- "--providers.docker=true" - "--providers.docker=true"
@@ -84,7 +84,7 @@ docker run -d \
-p 8080:8080 \ -p 8080:8080 \
-v $PWD/traefik.yml:/etc/traefik/traefik.yml \ -v $PWD/traefik.yml:/etc/traefik/traefik.yml \
-v /var/run/docker.sock:/var/run/docker.sock \ -v /var/run/docker.sock:/var/run/docker.sock \
traefik:v3.6 traefik:v3.7
``` ```
## Expose the Dashboard ## Expose the Dashboard
@@ -16,12 +16,12 @@ You can install Traefik with the following flavors:
Choose one of the [official Docker images](https://hub.docker.com/_/traefik) and run it with one sample configuration file: Choose one of the [official Docker images](https://hub.docker.com/_/traefik) and run it with one sample configuration file:
* [YAML](https://raw.githubusercontent.com/traefik/traefik/v3.6/traefik.sample.yml) * [YAML](https://raw.githubusercontent.com/traefik/traefik/v3.7/traefik.sample.yml)
* [TOML](https://raw.githubusercontent.com/traefik/traefik/v3.6/traefik.sample.toml) * [TOML](https://raw.githubusercontent.com/traefik/traefik/v3.7/traefik.sample.toml)
```shell ```shell
docker run -d -p 8080:8080 -p 80:80 \ docker run -d -p 8080:8080 -p 80:80 \
-v $PWD/traefik.yml:/etc/traefik/traefik.yml traefik:v3.6 -v $PWD/traefik.yml:/etc/traefik/traefik.yml traefik:v3.7
``` ```
For more details, go to the [Docker provider documentation](../providers/docker.md) For more details, go to the [Docker provider documentation](../providers/docker.md)
@@ -29,7 +29,7 @@ For more details, go to the [Docker provider documentation](../providers/docker.
!!! tip !!! tip
* Prefer a fixed version than the latest that could be an unexpected version. * Prefer a fixed version than the latest that could be an unexpected version.
ex: `traefik:v3.6` ex: `traefik:v3.7`
* Docker images are based from the [Alpine Linux Official image](https://hub.docker.com/_/alpine). * Docker images are based from the [Alpine Linux Official image](https://hub.docker.com/_/alpine).
* Any orchestrator using docker images can fetch the official Traefik docker image. * Any orchestrator using docker images can fetch the official Traefik docker image.
+2 -2
View File
@@ -523,7 +523,7 @@ To use the new `leasttime` load-balancer algorithm with the Kubernetes CRD provi
**Apply Updated CRDs:** **Apply Updated CRDs:**
```shell ```shell
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml
``` ```
## v3.6.2 ## v3.6.2
@@ -628,7 +628,7 @@ To use the new `maxResponseBodySize` option in the ForwardAuth middleware with t
**Apply Updated CRDs:** **Apply Updated CRDs:**
```shell ```shell
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml
``` ```
## v3.7.0 ## v3.7.0
+1 -1
View File
@@ -306,7 +306,7 @@ Example utilizing Docker Compose:
```yaml ```yaml
services: services:
traefik: traefik:
image: traefik:v3.6 image: traefik:v3.7
environment: environment:
- TZ=US/Alaska - TZ=US/Alaska
command: command:
+1 -1
View File
@@ -163,7 +163,7 @@ See the [Docker API Access](#docker-api-access) section for more information.
```yaml ```yaml
services: services:
traefik: traefik:
image: traefik:v3.6 # The official v3 Traefik docker image image: traefik:v3.7 # The official v3 Traefik docker image
ports: ports:
- "80:80" - "80:80"
volumes: volumes:
+2 -2
View File
@@ -31,10 +31,10 @@ the Traefik engineering team developed a [Custom Resource Definition](https://ku
```bash ```bash
# Install Traefik Resource Definitions: # Install Traefik Resource Definitions:
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml
# Install RBAC for Traefik: # Install RBAC for Traefik:
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-crd-rbac.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-crd-rbac.yml
``` ```
## Resource Configuration ## Resource Configuration
+1 -1
View File
@@ -34,7 +34,7 @@ For more details, check out the conformance [report](https://github.com/kubernet
```bash ```bash
# Install Traefik RBACs. # Install Traefik RBACs.
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-gateway-rbac.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-gateway-rbac.yml
``` ```
3. Deploy Traefik and enable the `kubernetesGateway` provider in the static configuration as detailed below: 3. Deploy Traefik and enable the `kubernetesGateway` provider in the static configuration as detailed below:
+1 -1
View File
@@ -555,6 +555,6 @@ providers:
### Further ### Further
To learn more about the various aspects of the Ingress specification that Traefik supports, To learn more about the various aspects of the Ingress specification that Traefik supports,
many examples of Ingresses definitions are located in the test [examples](https://github.com/traefik/traefik/tree/v3.6/pkg/provider/kubernetes/ingress/fixtures) of the Traefik repository. many examples of Ingresses definitions are located in the test [examples](https://github.com/traefik/traefik/tree/v3.7/pkg/provider/kubernetes/ingress/fixtures) of the Traefik repository.
{% include-markdown "includes/traefik-for-business-applications.md" %} {% include-markdown "includes/traefik-for-business-applications.md" %}
@@ -42,7 +42,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -55,7 +55,7 @@ spec:
description: |- description: |-
ParentRefs defines references to parent IngressRoute resources for multi-layer routing. ParentRefs defines references to parent IngressRoute resources for multi-layer routing.
When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers. When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers.
More info: https://doc.traefik.io/traefik/v3.6/routing/routers/#parentrefs More info: https://doc.traefik.io/traefik/v3.7/routing/routers/#parentrefs
items: items:
description: IngressRouteRef is a reference to an IngressRoute resource. description: IngressRouteRef is a reference to an IngressRoute resource.
properties: properties:
@@ -87,12 +87,12 @@ spec:
match: match:
description: |- description: |-
Match defines the router's rule. Match defines the router's rule.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/
type: string type: string
middlewares: middlewares:
description: |- description: |-
Middlewares defines the list of references to Middleware resources. Middlewares defines the list of references to Middleware resources.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/middleware/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/middleware/
items: items:
description: MiddlewareRef is a reference to a Middleware description: MiddlewareRef is a reference to a Middleware
resource. resource.
@@ -112,7 +112,7 @@ spec:
observability: observability:
description: |- description: |-
Observability defines the observability configuration for a router. Observability defines the observability configuration for a router.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/observability/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/observability/
properties: properties:
accessLogs: accessLogs:
description: AccessLogs enables access logs for this router. description: AccessLogs enables access logs for this router.
@@ -135,7 +135,7 @@ spec:
priority: priority:
description: |- description: |-
Priority defines the router's priority. Priority defines the router's priority.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#priority More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#priority
maximum: 9223372036854775000 maximum: 9223372036854775000
type: integer type: integer
services: services:
@@ -324,7 +324,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -395,7 +395,7 @@ spec:
syntax: syntax:
description: |- description: |-
Syntax defines the router's rule syntax. Syntax defines the router's rule syntax.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax
Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
type: string type: string
@@ -406,18 +406,18 @@ spec:
tls: tls:
description: |- description: |-
TLS defines the TLS configuration. TLS defines the TLS configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/router/#tls More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/router/#tls
properties: properties:
certResolver: certResolver:
description: |- description: |-
CertResolver defines the name of the certificate resolver to use. CertResolver defines the name of the certificate resolver to use.
Cert resolvers have to be configured in the static configuration. Cert resolvers have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
type: string type: string
domains: domains:
description: |- description: |-
Domains defines the list of domains that will be used to issue certificates. Domains defines the list of domains that will be used to issue certificates.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#domains More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#domains
items: items:
description: Domain holds a domain name with SANs. description: Domain holds a domain name with SANs.
properties: properties:
@@ -436,17 +436,17 @@ spec:
description: |- description: |-
Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
If not defined, the `default` TLSOption is used. If not defined, the `default` TLSOption is used.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-options/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-options/
properties: properties:
name: name:
description: |- description: |-
Name defines the name of the referenced TLSOption. Name defines the name of the referenced TLSOption.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
type: string type: string
namespace: namespace:
description: |- description: |-
Namespace defines the namespace of the referenced TLSOption. Namespace defines the namespace of the referenced TLSOption.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
type: string type: string
required: required:
- name - name
@@ -463,12 +463,12 @@ spec:
name: name:
description: |- description: |-
Name defines the name of the referenced TLSStore. Name defines the name of the referenced TLSStore.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
type: string type: string
namespace: namespace:
description: |- description: |-
Namespace defines the namespace of the referenced TLSStore. Namespace defines the namespace of the referenced TLSStore.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
type: string type: string
required: required:
- name - name
@@ -528,7 +528,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -545,7 +545,7 @@ spec:
match: match:
description: |- description: |-
Match defines the router's rule. Match defines the router's rule.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/
type: string type: string
middlewares: middlewares:
description: Middlewares defines the list of references to MiddlewareTCP description: Middlewares defines the list of references to MiddlewareTCP
@@ -569,7 +569,7 @@ spec:
priority: priority:
description: |- description: |-
Priority defines the router's priority. Priority defines the router's priority.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#priority More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#priority
maximum: 9223372036854775000 maximum: 9223372036854775000
type: integer type: integer
services: services:
@@ -611,7 +611,7 @@ spec:
proxyProtocol: proxyProtocol:
description: |- description: |-
ProxyProtocol defines the PROXY protocol configuration. ProxyProtocol defines the PROXY protocol configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/service/#proxy-protocol More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/service/#proxy-protocol
Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead. Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead.
properties: properties:
@@ -655,7 +655,7 @@ spec:
syntax: syntax:
description: |- description: |-
Syntax defines the router's rule syntax. Syntax defines the router's rule syntax.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax
Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
enum: enum:
@@ -669,18 +669,18 @@ spec:
tls: tls:
description: |- description: |-
TLS defines the TLS configuration on a layer 4 / TCP Route. TLS defines the TLS configuration on a layer 4 / TCP Route.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/router/#tls More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/router/#tls
properties: properties:
certResolver: certResolver:
description: |- description: |-
CertResolver defines the name of the certificate resolver to use. CertResolver defines the name of the certificate resolver to use.
Cert resolvers have to be configured in the static configuration. Cert resolvers have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
type: string type: string
domains: domains:
description: |- description: |-
Domains defines the list of domains that will be used to issue certificates. Domains defines the list of domains that will be used to issue certificates.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#domains More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#domains
items: items:
description: Domain holds a domain name with SANs. description: Domain holds a domain name with SANs.
properties: properties:
@@ -699,7 +699,7 @@ spec:
description: |- description: |-
Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
If not defined, the `default` TLSOption is used. If not defined, the `default` TLSOption is used.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#tls-options More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#tls-options
properties: properties:
name: name:
description: Name defines the name of the referenced Traefik description: Name defines the name of the referenced Traefik
@@ -791,7 +791,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -883,7 +883,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
Middleware is the CRD implementation of a Traefik Middleware. Middleware is the CRD implementation of a Traefik Middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -909,7 +909,7 @@ spec:
description: |- description: |-
AddPrefix holds the add prefix middleware configuration. AddPrefix holds the add prefix middleware configuration.
This middleware updates the path of a request before forwarding it. This middleware updates the path of a request before forwarding it.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/addprefix/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/addprefix/
properties: properties:
prefix: prefix:
description: |- description: |-
@@ -924,12 +924,12 @@ spec:
description: |- description: |-
BasicAuth holds the basic auth middleware configuration. BasicAuth holds the basic auth middleware configuration.
This middleware restricts access to your services to known users. This middleware restricts access to your services to known users.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/
properties: properties:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/#headerfield
type: string type: string
realm: realm:
description: |- description: |-
@@ -950,7 +950,7 @@ spec:
description: |- description: |-
Buffering holds the buffering middleware configuration. Buffering holds the buffering middleware configuration.
This middleware retries or limits the size of requests that can be forwarded to backends. This middleware retries or limits the size of requests that can be forwarded to backends.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#maxrequestbodybytes More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#maxrequestbodybytes
properties: properties:
maxRequestBodyBytes: maxRequestBodyBytes:
description: |- description: |-
@@ -982,14 +982,14 @@ spec:
description: |- description: |-
RetryExpression defines the retry conditions. RetryExpression defines the retry conditions.
It is a logical combination of functions with operators AND (&&) and OR (||). It is a logical combination of functions with operators AND (&&) and OR (||).
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#retryexpression More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#retryexpression
type: string type: string
type: object type: object
chain: chain:
description: |- description: |-
Chain holds the configuration of the chain middleware. Chain holds the configuration of the chain middleware.
This middleware enables to define reusable combinations of other pieces of middleware. This middleware enables to define reusable combinations of other pieces of middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/chain/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/chain/
properties: properties:
middlewares: middlewares:
description: Middlewares is the list of MiddlewareRef which composes description: Middlewares is the list of MiddlewareRef which composes
@@ -1052,7 +1052,7 @@ spec:
description: |- description: |-
Compress holds the compress middleware configuration. Compress holds the compress middleware configuration.
This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression. This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/compress/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/compress/
properties: properties:
defaultEncoding: defaultEncoding:
description: DefaultEncoding specifies the default encoding if description: DefaultEncoding specifies the default encoding if
@@ -1103,12 +1103,12 @@ spec:
description: |- description: |-
DigestAuth holds the digest auth middleware configuration. DigestAuth holds the digest auth middleware configuration.
This middleware restricts access to your services to known users. This middleware restricts access to your services to known users.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/
properties: properties:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/#headerfield
type: string type: string
realm: realm:
description: |- description: |-
@@ -1161,7 +1161,7 @@ spec:
description: |- description: |-
ErrorPage holds the custom error middleware configuration. ErrorPage holds the custom error middleware configuration.
This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes. This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/
properties: properties:
query: query:
description: |- description: |-
@@ -1173,7 +1173,7 @@ spec:
service: service:
description: |- description: |-
Service defines the reference to a Kubernetes Service that will serve the error page. Service defines the reference to a Kubernetes Service that will serve the error page.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/#service More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/#service
properties: properties:
healthCheck: healthCheck:
description: Healthcheck defines health checks for ExternalName description: Healthcheck defines health checks for ExternalName
@@ -1353,7 +1353,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -1442,7 +1442,7 @@ spec:
description: |- description: |-
ForwardAuth holds the forward auth middleware configuration. ForwardAuth holds the forward auth middleware configuration.
This middleware delegates the request authentication to a Service. This middleware delegates the request authentication to a Service.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/
properties: properties:
addAuthCookiesToResponse: addAuthCookiesToResponse:
description: AddAuthCookiesToResponse defines the list of cookies description: AddAuthCookiesToResponse defines the list of cookies
@@ -1470,7 +1470,7 @@ spec:
authResponseHeadersRegex: authResponseHeadersRegex:
description: |- description: |-
AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex. AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex
type: string type: string
authSigninURL: authSigninURL:
description: AuthSigninURL specifies the URL to redirect to when description: AuthSigninURL specifies the URL to redirect to when
@@ -1483,7 +1483,7 @@ spec:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#headerfield
type: string type: string
maxBodySize: maxBodySize:
description: MaxBodySize defines the maximum body size in bytes description: MaxBodySize defines the maximum body size in bytes
@@ -1550,7 +1550,7 @@ spec:
description: |- description: |-
Headers holds the headers middleware configuration. Headers holds the headers middleware configuration.
This middleware manages the requests and responses headers. This middleware manages the requests and responses headers.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/headers/#customrequestheaders More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/headers/#customrequestheaders
properties: properties:
accessControlAllowCredentials: accessControlAllowCredentials:
description: AccessControlAllowCredentials defines whether the description: AccessControlAllowCredentials defines whether the
@@ -1722,7 +1722,7 @@ spec:
description: |- description: |-
InFlightReq holds the in-flight request middleware configuration. InFlightReq holds the in-flight request middleware configuration.
This middleware limits the number of requests being processed and served concurrently. This middleware limits the number of requests being processed and served concurrently.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/
properties: properties:
amount: amount:
description: |- description: |-
@@ -1736,12 +1736,12 @@ spec:
SourceCriterion defines what criterion is used to group requests as originating from a common source. SourceCriterion defines what criterion is used to group requests as originating from a common source.
If several strategies are defined at the same time, an error will be raised. If several strategies are defined at the same time, an error will be raised.
If none are set, the default is to use the requestHost. If none are set, the default is to use the requestHost.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/#sourcecriterion More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/#sourcecriterion
properties: properties:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -1777,12 +1777,12 @@ spec:
description: |- description: |-
IPAllowList holds the IP allowlist middleware configuration. IPAllowList holds the IP allowlist middleware configuration.
This middleware limits allowed requests based on the client IP. This middleware limits allowed requests based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/
properties: properties:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -1820,7 +1820,7 @@ spec:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -1851,7 +1851,7 @@ spec:
description: |- description: |-
PassTLSClientCert holds the pass TLS client cert middleware configuration. PassTLSClientCert holds the pass TLS client cert middleware configuration.
This middleware adds the selected data from the passed client TLS certificate to a header. This middleware adds the selected data from the passed client TLS certificate to a header.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/passtlsclientcert/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/passtlsclientcert/
properties: properties:
info: info:
description: Info selects the specific client certificate details description: Info selects the specific client certificate details
@@ -1954,13 +1954,13 @@ spec:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
description: |- description: |-
Plugin defines the middleware plugin configuration. Plugin defines the middleware plugin configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/#community-middlewares More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/#community-middlewares
type: object type: object
rateLimit: rateLimit:
description: |- description: |-
RateLimit holds the rate limit configuration. RateLimit holds the rate limit configuration.
This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is. This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/ratelimit/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/ratelimit/
properties: properties:
average: average:
description: |- description: |-
@@ -2079,7 +2079,7 @@ spec:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -2115,7 +2115,7 @@ spec:
description: |- description: |-
RedirectRegex holds the redirect regex middleware configuration. RedirectRegex holds the redirect regex middleware configuration.
This middleware redirects a request using regex matching and replacement. This middleware redirects a request using regex matching and replacement.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectregex/#regex More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectregex/#regex
properties: properties:
permanent: permanent:
description: Permanent defines whether the redirection is permanent description: Permanent defines whether the redirection is permanent
@@ -2134,7 +2134,7 @@ spec:
description: |- description: |-
RedirectScheme holds the redirect scheme middleware configuration. RedirectScheme holds the redirect scheme middleware configuration.
This middleware redirects requests from a scheme/port to another. This middleware redirects requests from a scheme/port to another.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectscheme/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectscheme/
properties: properties:
permanent: permanent:
description: |- description: |-
@@ -2152,7 +2152,7 @@ spec:
description: |- description: |-
ReplacePath holds the replace path middleware configuration. ReplacePath holds the replace path middleware configuration.
This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header. This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepath/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepath/
properties: properties:
path: path:
description: Path defines the path to use as replacement in the description: Path defines the path to use as replacement in the
@@ -2163,7 +2163,7 @@ spec:
description: |- description: |-
ReplacePathRegex holds the replace path regex middleware configuration. ReplacePathRegex holds the replace path regex middleware configuration.
This middleware replaces the path of a URL using regex matching and replacement. This middleware replaces the path of a URL using regex matching and replacement.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepathregex/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepathregex/
properties: properties:
regex: regex:
description: Regex defines the regular expression used to match description: Regex defines the regular expression used to match
@@ -2179,7 +2179,7 @@ spec:
Retry holds the retry middleware configuration. Retry holds the retry middleware configuration.
This middleware reissues requests a given number of times to a backend server if that server does not reply. This middleware reissues requests a given number of times to a backend server if that server does not reply.
As soon as the server answers, the middleware stops retrying, regardless of the response status. As soon as the server answers, the middleware stops retrying, regardless of the response status.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/retry/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/retry/
properties: properties:
attempts: attempts:
description: Attempts defines how many times the request should description: Attempts defines how many times the request should
@@ -2236,7 +2236,7 @@ spec:
description: |- description: |-
StripPrefix holds the strip prefix middleware configuration. StripPrefix holds the strip prefix middleware configuration.
This middleware removes the specified prefixes from the URL path. This middleware removes the specified prefixes from the URL path.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefix/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefix/
properties: properties:
forceSlash: forceSlash:
description: |- description: |-
@@ -2255,7 +2255,7 @@ spec:
description: |- description: |-
StripPrefixRegex holds the strip prefix regex middleware configuration. StripPrefixRegex holds the strip prefix regex middleware configuration.
This middleware removes the matching prefixes from the URL path. This middleware removes the matching prefixes from the URL path.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefixregex/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefixregex/
properties: properties:
regex: regex:
description: Regex defines the regular expression to match the description: Regex defines the regular expression to match the
@@ -2292,7 +2292,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
MiddlewareTCP is the CRD implementation of a Traefik TCP middleware. MiddlewareTCP is the CRD implementation of a Traefik TCP middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/overview/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/overview/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2329,7 +2329,7 @@ spec:
description: |- description: |-
IPAllowList defines the IPAllowList middleware configuration. IPAllowList defines the IPAllowList middleware configuration.
This middleware accepts/refuses connections based on the client IP. This middleware accepts/refuses connections based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipallowlist/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipallowlist/
properties: properties:
sourceRange: sourceRange:
description: SourceRange defines the allowed IPs (or ranges of description: SourceRange defines the allowed IPs (or ranges of
@@ -2342,7 +2342,7 @@ spec:
description: |- description: |-
IPWhiteList defines the IPWhiteList middleware configuration. IPWhiteList defines the IPWhiteList middleware configuration.
This middleware accepts/refuses connections based on the client IP. This middleware accepts/refuses connections based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipwhitelist/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipwhitelist/
Deprecated: please use IPAllowList instead. Deprecated: please use IPAllowList instead.
properties: properties:
@@ -2383,7 +2383,7 @@ spec:
ServersTransport is the CRD implementation of a ServersTransport. ServersTransport is the CRD implementation of a ServersTransport.
If no serversTransport is specified, the default@internal will be used. If no serversTransport is specified, the default@internal will be used.
The default@internal serversTransport is created from the static configuration. The default@internal serversTransport is created from the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/serverstransport/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/serverstransport/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2567,7 +2567,7 @@ spec:
ServersTransportTCP is the CRD implementation of a TCPServersTransport. ServersTransportTCP is the CRD implementation of a TCPServersTransport.
If no tcpServersTransport is specified, a default one named default@internal will be used. If no tcpServersTransport is specified, a default one named default@internal will be used.
The default@internal tcpServersTransport can be configured in the static configuration. The default@internal tcpServersTransport can be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/serverstransport/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/serverstransport/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2722,7 +2722,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection. TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2747,14 +2747,14 @@ spec:
alpnProtocols: alpnProtocols:
description: |- description: |-
ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference. ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols
items: items:
type: string type: string
type: array type: array
cipherSuites: cipherSuites:
description: |- description: |-
CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2. CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites
items: items:
type: string type: string
type: array type: array
@@ -2782,7 +2782,7 @@ spec:
curvePreferences: curvePreferences:
description: |- description: |-
CurvePreferences defines the preferred elliptic curves. CurvePreferences defines the preferred elliptic curves.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences
items: items:
type: string type: string
type: array type: array
@@ -2843,7 +2843,7 @@ spec:
TLSStore is the CRD implementation of a Traefik TLS Store. TLSStore is the CRD implementation of a Traefik TLS Store.
For the time being, only the TLSStore named default is supported. For the time being, only the TLSStore named default is supported.
This means that you cannot have two stores that are named default in different Kubernetes namespaces. This means that you cannot have two stores that are named default in different Kubernetes namespaces.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2941,7 +2941,7 @@ spec:
TraefikService object allows to: TraefikService object allows to:
- Apply weight to Services on load-balancing - Apply weight to Services on load-balancing
- Mirror traffic on services - Mirror traffic on services
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -3165,7 +3165,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -3412,7 +3412,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -3672,7 +3672,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4038,7 +4038,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4187,7 +4187,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4440,7 +4440,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4510,7 +4510,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines whether sticky sessions are enabled. Sticky defines whether sticky sessions are enabled.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -24,7 +24,7 @@ spec:
serviceAccountName: traefik-controller serviceAccountName: traefik-controller
containers: containers:
- name: traefik - name: traefik
image: traefik:v3.6 image: traefik:v3.7
args: args:
- --entryPoints.web.address=:80 - --entryPoints.web.address=:80
- --entryPoints.websecure.address=:443 - --entryPoints.websecure.address=:443
@@ -43,7 +43,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -56,7 +56,7 @@ spec:
description: |- description: |-
ParentRefs defines references to parent IngressRoute resources for multi-layer routing. ParentRefs defines references to parent IngressRoute resources for multi-layer routing.
When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers. When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers.
More info: https://doc.traefik.io/traefik/v3.6/routing/routers/#parentrefs More info: https://doc.traefik.io/traefik/v3.7/routing/routers/#parentrefs
items: items:
description: IngressRouteRef is a reference to an IngressRoute resource. description: IngressRouteRef is a reference to an IngressRoute resource.
properties: properties:
@@ -88,12 +88,12 @@ spec:
match: match:
description: |- description: |-
Match defines the router's rule. Match defines the router's rule.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/
type: string type: string
middlewares: middlewares:
description: |- description: |-
Middlewares defines the list of references to Middleware resources. Middlewares defines the list of references to Middleware resources.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/middleware/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/middleware/
items: items:
description: MiddlewareRef is a reference to a Middleware description: MiddlewareRef is a reference to a Middleware
resource. resource.
@@ -113,7 +113,7 @@ spec:
observability: observability:
description: |- description: |-
Observability defines the observability configuration for a router. Observability defines the observability configuration for a router.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/observability/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/observability/
properties: properties:
accessLogs: accessLogs:
description: AccessLogs enables access logs for this router. description: AccessLogs enables access logs for this router.
@@ -136,7 +136,7 @@ spec:
priority: priority:
description: |- description: |-
Priority defines the router's priority. Priority defines the router's priority.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#priority More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#priority
maximum: 9223372036854775000 maximum: 9223372036854775000
type: integer type: integer
services: services:
@@ -325,7 +325,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -396,7 +396,7 @@ spec:
syntax: syntax:
description: |- description: |-
Syntax defines the router's rule syntax. Syntax defines the router's rule syntax.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax
Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
type: string type: string
@@ -407,18 +407,18 @@ spec:
tls: tls:
description: |- description: |-
TLS defines the TLS configuration. TLS defines the TLS configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/router/#tls More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/router/#tls
properties: properties:
certResolver: certResolver:
description: |- description: |-
CertResolver defines the name of the certificate resolver to use. CertResolver defines the name of the certificate resolver to use.
Cert resolvers have to be configured in the static configuration. Cert resolvers have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
type: string type: string
domains: domains:
description: |- description: |-
Domains defines the list of domains that will be used to issue certificates. Domains defines the list of domains that will be used to issue certificates.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#domains More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#domains
items: items:
description: Domain holds a domain name with SANs. description: Domain holds a domain name with SANs.
properties: properties:
@@ -437,17 +437,17 @@ spec:
description: |- description: |-
Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
If not defined, the `default` TLSOption is used. If not defined, the `default` TLSOption is used.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-options/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-options/
properties: properties:
name: name:
description: |- description: |-
Name defines the name of the referenced TLSOption. Name defines the name of the referenced TLSOption.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
type: string type: string
namespace: namespace:
description: |- description: |-
Namespace defines the namespace of the referenced TLSOption. Namespace defines the namespace of the referenced TLSOption.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
type: string type: string
required: required:
- name - name
@@ -464,12 +464,12 @@ spec:
name: name:
description: |- description: |-
Name defines the name of the referenced TLSStore. Name defines the name of the referenced TLSStore.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
type: string type: string
namespace: namespace:
description: |- description: |-
Namespace defines the namespace of the referenced TLSStore. Namespace defines the namespace of the referenced TLSStore.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
type: string type: string
required: required:
- name - name
@@ -43,7 +43,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -60,7 +60,7 @@ spec:
match: match:
description: |- description: |-
Match defines the router's rule. Match defines the router's rule.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/
type: string type: string
middlewares: middlewares:
description: Middlewares defines the list of references to MiddlewareTCP description: Middlewares defines the list of references to MiddlewareTCP
@@ -84,7 +84,7 @@ spec:
priority: priority:
description: |- description: |-
Priority defines the router's priority. Priority defines the router's priority.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#priority More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#priority
maximum: 9223372036854775000 maximum: 9223372036854775000
type: integer type: integer
services: services:
@@ -126,7 +126,7 @@ spec:
proxyProtocol: proxyProtocol:
description: |- description: |-
ProxyProtocol defines the PROXY protocol configuration. ProxyProtocol defines the PROXY protocol configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/service/#proxy-protocol More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/service/#proxy-protocol
Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead. Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead.
properties: properties:
@@ -170,7 +170,7 @@ spec:
syntax: syntax:
description: |- description: |-
Syntax defines the router's rule syntax. Syntax defines the router's rule syntax.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax
Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
enum: enum:
@@ -184,18 +184,18 @@ spec:
tls: tls:
description: |- description: |-
TLS defines the TLS configuration on a layer 4 / TCP Route. TLS defines the TLS configuration on a layer 4 / TCP Route.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/router/#tls More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/router/#tls
properties: properties:
certResolver: certResolver:
description: |- description: |-
CertResolver defines the name of the certificate resolver to use. CertResolver defines the name of the certificate resolver to use.
Cert resolvers have to be configured in the static configuration. Cert resolvers have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
type: string type: string
domains: domains:
description: |- description: |-
Domains defines the list of domains that will be used to issue certificates. Domains defines the list of domains that will be used to issue certificates.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#domains More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#domains
items: items:
description: Domain holds a domain name with SANs. description: Domain holds a domain name with SANs.
properties: properties:
@@ -214,7 +214,7 @@ spec:
description: |- description: |-
Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
If not defined, the `default` TLSOption is used. If not defined, the `default` TLSOption is used.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#tls-options More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#tls-options
properties: properties:
name: name:
description: Name defines the name of the referenced Traefik description: Name defines the name of the referenced Traefik
@@ -43,7 +43,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -19,7 +19,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
Middleware is the CRD implementation of a Traefik Middleware. Middleware is the CRD implementation of a Traefik Middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -45,7 +45,7 @@ spec:
description: |- description: |-
AddPrefix holds the add prefix middleware configuration. AddPrefix holds the add prefix middleware configuration.
This middleware updates the path of a request before forwarding it. This middleware updates the path of a request before forwarding it.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/addprefix/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/addprefix/
properties: properties:
prefix: prefix:
description: |- description: |-
@@ -60,12 +60,12 @@ spec:
description: |- description: |-
BasicAuth holds the basic auth middleware configuration. BasicAuth holds the basic auth middleware configuration.
This middleware restricts access to your services to known users. This middleware restricts access to your services to known users.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/
properties: properties:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/#headerfield
type: string type: string
realm: realm:
description: |- description: |-
@@ -86,7 +86,7 @@ spec:
description: |- description: |-
Buffering holds the buffering middleware configuration. Buffering holds the buffering middleware configuration.
This middleware retries or limits the size of requests that can be forwarded to backends. This middleware retries or limits the size of requests that can be forwarded to backends.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#maxrequestbodybytes More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#maxrequestbodybytes
properties: properties:
maxRequestBodyBytes: maxRequestBodyBytes:
description: |- description: |-
@@ -118,14 +118,14 @@ spec:
description: |- description: |-
RetryExpression defines the retry conditions. RetryExpression defines the retry conditions.
It is a logical combination of functions with operators AND (&&) and OR (||). It is a logical combination of functions with operators AND (&&) and OR (||).
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#retryexpression More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#retryexpression
type: string type: string
type: object type: object
chain: chain:
description: |- description: |-
Chain holds the configuration of the chain middleware. Chain holds the configuration of the chain middleware.
This middleware enables to define reusable combinations of other pieces of middleware. This middleware enables to define reusable combinations of other pieces of middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/chain/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/chain/
properties: properties:
middlewares: middlewares:
description: Middlewares is the list of MiddlewareRef which composes description: Middlewares is the list of MiddlewareRef which composes
@@ -188,7 +188,7 @@ spec:
description: |- description: |-
Compress holds the compress middleware configuration. Compress holds the compress middleware configuration.
This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression. This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/compress/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/compress/
properties: properties:
defaultEncoding: defaultEncoding:
description: DefaultEncoding specifies the default encoding if description: DefaultEncoding specifies the default encoding if
@@ -239,12 +239,12 @@ spec:
description: |- description: |-
DigestAuth holds the digest auth middleware configuration. DigestAuth holds the digest auth middleware configuration.
This middleware restricts access to your services to known users. This middleware restricts access to your services to known users.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/
properties: properties:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/#headerfield
type: string type: string
realm: realm:
description: |- description: |-
@@ -297,7 +297,7 @@ spec:
description: |- description: |-
ErrorPage holds the custom error middleware configuration. ErrorPage holds the custom error middleware configuration.
This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes. This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/
properties: properties:
query: query:
description: |- description: |-
@@ -309,7 +309,7 @@ spec:
service: service:
description: |- description: |-
Service defines the reference to a Kubernetes Service that will serve the error page. Service defines the reference to a Kubernetes Service that will serve the error page.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/#service More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/#service
properties: properties:
healthCheck: healthCheck:
description: Healthcheck defines health checks for ExternalName description: Healthcheck defines health checks for ExternalName
@@ -489,7 +489,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -578,7 +578,7 @@ spec:
description: |- description: |-
ForwardAuth holds the forward auth middleware configuration. ForwardAuth holds the forward auth middleware configuration.
This middleware delegates the request authentication to a Service. This middleware delegates the request authentication to a Service.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/
properties: properties:
addAuthCookiesToResponse: addAuthCookiesToResponse:
description: AddAuthCookiesToResponse defines the list of cookies description: AddAuthCookiesToResponse defines the list of cookies
@@ -606,7 +606,7 @@ spec:
authResponseHeadersRegex: authResponseHeadersRegex:
description: |- description: |-
AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex. AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex
type: string type: string
authSigninURL: authSigninURL:
description: AuthSigninURL specifies the URL to redirect to when description: AuthSigninURL specifies the URL to redirect to when
@@ -619,7 +619,7 @@ spec:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#headerfield
type: string type: string
maxBodySize: maxBodySize:
description: MaxBodySize defines the maximum body size in bytes description: MaxBodySize defines the maximum body size in bytes
@@ -686,7 +686,7 @@ spec:
description: |- description: |-
Headers holds the headers middleware configuration. Headers holds the headers middleware configuration.
This middleware manages the requests and responses headers. This middleware manages the requests and responses headers.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/headers/#customrequestheaders More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/headers/#customrequestheaders
properties: properties:
accessControlAllowCredentials: accessControlAllowCredentials:
description: AccessControlAllowCredentials defines whether the description: AccessControlAllowCredentials defines whether the
@@ -858,7 +858,7 @@ spec:
description: |- description: |-
InFlightReq holds the in-flight request middleware configuration. InFlightReq holds the in-flight request middleware configuration.
This middleware limits the number of requests being processed and served concurrently. This middleware limits the number of requests being processed and served concurrently.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/
properties: properties:
amount: amount:
description: |- description: |-
@@ -872,12 +872,12 @@ spec:
SourceCriterion defines what criterion is used to group requests as originating from a common source. SourceCriterion defines what criterion is used to group requests as originating from a common source.
If several strategies are defined at the same time, an error will be raised. If several strategies are defined at the same time, an error will be raised.
If none are set, the default is to use the requestHost. If none are set, the default is to use the requestHost.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/#sourcecriterion More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/#sourcecriterion
properties: properties:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -913,12 +913,12 @@ spec:
description: |- description: |-
IPAllowList holds the IP allowlist middleware configuration. IPAllowList holds the IP allowlist middleware configuration.
This middleware limits allowed requests based on the client IP. This middleware limits allowed requests based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/
properties: properties:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -956,7 +956,7 @@ spec:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -987,7 +987,7 @@ spec:
description: |- description: |-
PassTLSClientCert holds the pass TLS client cert middleware configuration. PassTLSClientCert holds the pass TLS client cert middleware configuration.
This middleware adds the selected data from the passed client TLS certificate to a header. This middleware adds the selected data from the passed client TLS certificate to a header.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/passtlsclientcert/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/passtlsclientcert/
properties: properties:
info: info:
description: Info selects the specific client certificate details description: Info selects the specific client certificate details
@@ -1090,13 +1090,13 @@ spec:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
description: |- description: |-
Plugin defines the middleware plugin configuration. Plugin defines the middleware plugin configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/#community-middlewares More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/#community-middlewares
type: object type: object
rateLimit: rateLimit:
description: |- description: |-
RateLimit holds the rate limit configuration. RateLimit holds the rate limit configuration.
This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is. This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/ratelimit/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/ratelimit/
properties: properties:
average: average:
description: |- description: |-
@@ -1215,7 +1215,7 @@ spec:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -1251,7 +1251,7 @@ spec:
description: |- description: |-
RedirectRegex holds the redirect regex middleware configuration. RedirectRegex holds the redirect regex middleware configuration.
This middleware redirects a request using regex matching and replacement. This middleware redirects a request using regex matching and replacement.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectregex/#regex More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectregex/#regex
properties: properties:
permanent: permanent:
description: Permanent defines whether the redirection is permanent description: Permanent defines whether the redirection is permanent
@@ -1270,7 +1270,7 @@ spec:
description: |- description: |-
RedirectScheme holds the redirect scheme middleware configuration. RedirectScheme holds the redirect scheme middleware configuration.
This middleware redirects requests from a scheme/port to another. This middleware redirects requests from a scheme/port to another.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectscheme/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectscheme/
properties: properties:
permanent: permanent:
description: |- description: |-
@@ -1288,7 +1288,7 @@ spec:
description: |- description: |-
ReplacePath holds the replace path middleware configuration. ReplacePath holds the replace path middleware configuration.
This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header. This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepath/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepath/
properties: properties:
path: path:
description: Path defines the path to use as replacement in the description: Path defines the path to use as replacement in the
@@ -1299,7 +1299,7 @@ spec:
description: |- description: |-
ReplacePathRegex holds the replace path regex middleware configuration. ReplacePathRegex holds the replace path regex middleware configuration.
This middleware replaces the path of a URL using regex matching and replacement. This middleware replaces the path of a URL using regex matching and replacement.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepathregex/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepathregex/
properties: properties:
regex: regex:
description: Regex defines the regular expression used to match description: Regex defines the regular expression used to match
@@ -1315,7 +1315,7 @@ spec:
Retry holds the retry middleware configuration. Retry holds the retry middleware configuration.
This middleware reissues requests a given number of times to a backend server if that server does not reply. This middleware reissues requests a given number of times to a backend server if that server does not reply.
As soon as the server answers, the middleware stops retrying, regardless of the response status. As soon as the server answers, the middleware stops retrying, regardless of the response status.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/retry/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/retry/
properties: properties:
attempts: attempts:
description: Attempts defines how many times the request should description: Attempts defines how many times the request should
@@ -1372,7 +1372,7 @@ spec:
description: |- description: |-
StripPrefix holds the strip prefix middleware configuration. StripPrefix holds the strip prefix middleware configuration.
This middleware removes the specified prefixes from the URL path. This middleware removes the specified prefixes from the URL path.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefix/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefix/
properties: properties:
forceSlash: forceSlash:
description: |- description: |-
@@ -1391,7 +1391,7 @@ spec:
description: |- description: |-
StripPrefixRegex holds the strip prefix regex middleware configuration. StripPrefixRegex holds the strip prefix regex middleware configuration.
This middleware removes the matching prefixes from the URL path. This middleware removes the matching prefixes from the URL path.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefixregex/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefixregex/
properties: properties:
regex: regex:
description: Regex defines the regular expression to match the description: Regex defines the regular expression to match the
@@ -19,7 +19,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
MiddlewareTCP is the CRD implementation of a Traefik TCP middleware. MiddlewareTCP is the CRD implementation of a Traefik TCP middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/overview/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/overview/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -56,7 +56,7 @@ spec:
description: |- description: |-
IPAllowList defines the IPAllowList middleware configuration. IPAllowList defines the IPAllowList middleware configuration.
This middleware accepts/refuses connections based on the client IP. This middleware accepts/refuses connections based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipallowlist/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipallowlist/
properties: properties:
sourceRange: sourceRange:
description: SourceRange defines the allowed IPs (or ranges of description: SourceRange defines the allowed IPs (or ranges of
@@ -69,7 +69,7 @@ spec:
description: |- description: |-
IPWhiteList defines the IPWhiteList middleware configuration. IPWhiteList defines the IPWhiteList middleware configuration.
This middleware accepts/refuses connections based on the client IP. This middleware accepts/refuses connections based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipwhitelist/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipwhitelist/
Deprecated: please use IPAllowList instead. Deprecated: please use IPAllowList instead.
properties: properties:
@@ -21,7 +21,7 @@ spec:
ServersTransport is the CRD implementation of a ServersTransport. ServersTransport is the CRD implementation of a ServersTransport.
If no serversTransport is specified, the default@internal will be used. If no serversTransport is specified, the default@internal will be used.
The default@internal serversTransport is created from the static configuration. The default@internal serversTransport is created from the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/serverstransport/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/serverstransport/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -21,7 +21,7 @@ spec:
ServersTransportTCP is the CRD implementation of a TCPServersTransport. ServersTransportTCP is the CRD implementation of a TCPServersTransport.
If no tcpServersTransport is specified, a default one named default@internal will be used. If no tcpServersTransport is specified, a default one named default@internal will be used.
The default@internal tcpServersTransport can be configured in the static configuration. The default@internal tcpServersTransport can be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/serverstransport/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/serverstransport/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -19,7 +19,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection. TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -44,14 +44,14 @@ spec:
alpnProtocols: alpnProtocols:
description: |- description: |-
ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference. ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols
items: items:
type: string type: string
type: array type: array
cipherSuites: cipherSuites:
description: |- description: |-
CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2. CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites
items: items:
type: string type: string
type: array type: array
@@ -79,7 +79,7 @@ spec:
curvePreferences: curvePreferences:
description: |- description: |-
CurvePreferences defines the preferred elliptic curves. CurvePreferences defines the preferred elliptic curves.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences
items: items:
type: string type: string
type: array type: array
@@ -21,7 +21,7 @@ spec:
TLSStore is the CRD implementation of a Traefik TLS Store. TLSStore is the CRD implementation of a Traefik TLS Store.
For the time being, only the TLSStore named default is supported. For the time being, only the TLSStore named default is supported.
This means that you cannot have two stores that are named default in different Kubernetes namespaces. This means that you cannot have two stores that are named default in different Kubernetes namespaces.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -22,7 +22,7 @@ spec:
TraefikService object allows to: TraefikService object allows to:
- Apply weight to Services on load-balancing - Apply weight to Services on load-balancing
- Mirror traffic on services - Mirror traffic on services
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -246,7 +246,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -493,7 +493,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -753,7 +753,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -1119,7 +1119,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -1268,7 +1268,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -1521,7 +1521,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -1591,7 +1591,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines whether sticky sessions are enabled. Sticky defines whether sticky sessions are enabled.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -407,7 +407,7 @@ Example utilizing Docker Compose:
```yaml ```yaml
services: services:
traefik: traefik:
image: traefik:v3.6 image: traefik:v3.7
environment: environment:
- TZ=US/Alaska - TZ=US/Alaska
command: command:
@@ -50,7 +50,7 @@ enabling seamless integration between Traefik's networking capabilities and Knat
5. Install/update the Traefik [RBAC](../../../dynamic-configuration/kubernetes-knative-rbac.yml). 5. Install/update the Traefik [RBAC](../../../dynamic-configuration/kubernetes-knative-rbac.yml).
```bash ```bash
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-knative-rbac.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-knative-rbac.yml
``` ```
## Configuration Example ## Configuration Example
@@ -20,10 +20,10 @@ When you install Traefik without using the Helm Chart, or when you are upgrading
```bash ```bash
# Install Traefik Resource Definitions: # Install Traefik Resource Definitions:
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-crd-definition-v1.yml
# Install RBAC for Traefik: # Install RBAC for Traefik:
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-crd-rbac.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-crd-rbac.yml
``` ```
## Configuration Example ## Configuration Example
@@ -34,7 +34,7 @@ For more details, check out the conformance [report](https://github.com/kubernet
```bash ```bash
# Install Traefik RBACs. # Install Traefik RBACs.
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-gateway-rbac.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-gateway-rbac.yml
``` ```
## Configuration Example ## Configuration Example
@@ -29,7 +29,7 @@ ensure that you add/update the [RBAC](https://kubernetes.io/docs/reference/acces
```bash ```bash
# Install RBAC for Traefik Ingress NGINX provider: # Install RBAC for Traefik Ingress NGINX provider:
kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.6/docs/content/reference/dynamic-configuration/kubernetes-ingress-nginx-rbac.yml kubectl apply -f https://raw.githubusercontent.com/traefik/traefik/v3.7/docs/content/reference/dynamic-configuration/kubernetes-ingress-nginx-rbac.yml
``` ```
## Ingress Discovery ## Ingress Discovery
@@ -163,7 +163,7 @@ creating the corresponding routers, services, middlewares, and other components
serviceAccountName: traefik-ingress-controller serviceAccountName: traefik-ingress-controller
containers: containers:
- name: traefik - name: traefik
image: traefik:v3.6 image: traefik:v3.7
args: args:
- --entryPoints.web.address=:80 - --entryPoints.web.address=:80
- --providers.kubernetesingressnginx - --providers.kubernetesingressnginx
@@ -402,7 +402,7 @@ This way, any Ingress attached to this Entrypoint will have TLS termination by d
serviceAccountName: traefik-ingress-controller serviceAccountName: traefik-ingress-controller
containers: containers:
- name: traefik - name: traefik
image: traefik:v3.6 image: traefik:v3.7
args: args:
- --entryPoints.websecure.address=:443 - --entryPoints.websecure.address=:443
- --entryPoints.websecure.http.tls - --entryPoints.websecure.http.tls
@@ -48,7 +48,7 @@ The Kubernetes Ingress Controller, The Custom Resource Way.
serviceAccountName: traefik-ingress-controller serviceAccountName: traefik-ingress-controller
containers: containers:
- name: traefik - name: traefik
image: traefik:v3.6 image: traefik:v3.7
args: args:
- --log.level=DEBUG - --log.level=DEBUG
- --api - --api
@@ -130,7 +130,7 @@ which in turn will create the resulting routers, services, handlers, etc.
serviceAccountName: traefik-ingress-controller serviceAccountName: traefik-ingress-controller
containers: containers:
- name: traefik - name: traefik
image: traefik:v3.6 image: traefik:v3.7
args: args:
- --entryPoints.web.address=:80 - --entryPoints.web.address=:80
- --providers.kubernetesingress - --providers.kubernetesingress
@@ -593,7 +593,7 @@ This way, any Ingress attached to this Entrypoint will have TLS termination by d
serviceAccountName: traefik-ingress-controller serviceAccountName: traefik-ingress-controller
containers: containers:
- name: traefik - name: traefik
image: traefik:v3.6 image: traefik:v3.7
args: args:
- --entryPoints.websecure.address=:443 - --entryPoints.websecure.address=:443
- --entryPoints.websecure.http.tls - --entryPoints.websecure.http.tls
@@ -786,7 +786,7 @@ For more options, please refer to the available [annotations](#on-ingress).
serviceAccountName: traefik-ingress-controller serviceAccountName: traefik-ingress-controller
containers: containers:
- name: traefik - name: traefik
image: traefik:v3.6 image: traefik:v3.7
args: args:
- --entryPoints.websecure.address=:443 - --entryPoints.websecure.address=:443
- --providers.kubernetesingress - --providers.kubernetesingress
+1 -1
View File
@@ -64,7 +64,7 @@ In the same folder as the `dynamic/tls.yaml` file, create a `docker-compose.yaml
```yaml ```yaml
services: services:
traefik: traefik:
image: traefik:v3.6 image: traefik:v3.7
container_name: traefik container_name: traefik
restart: unless-stopped restart: unless-stopped
security_opt: security_opt:
+1 -1
View File
@@ -61,7 +61,7 @@ In the same directory, create `dockercomposeswarm.yaml`:
```yaml ```yaml
services: services:
traefik: traefik:
image: traefik:v3.6 image: traefik:v3.7
networks: networks:
# Connect to the 'traefik_proxy' overlay network for inter-container communication across nodes # Connect to the 'traefik_proxy' overlay network for inter-container communication across nodes
@@ -1,7 +1,7 @@
services: services:
traefik: traefik:
image: "traefik:v3.6" image: "traefik:v3.7"
container_name: "traefik" container_name: "traefik"
command: command:
#- "--log.level=DEBUG" #- "--log.level=DEBUG"
@@ -11,7 +11,7 @@ secrets:
services: services:
traefik: traefik:
image: "traefik:v3.6" image: "traefik:v3.7"
container_name: "traefik" container_name: "traefik"
command: command:
#- "--log.level=DEBUG" #- "--log.level=DEBUG"
@@ -1,7 +1,7 @@
services: services:
traefik: traefik:
image: "traefik:v3.6" image: "traefik:v3.7"
container_name: "traefik" container_name: "traefik"
command: command:
#- "--log.level=DEBUG" #- "--log.level=DEBUG"
@@ -1,7 +1,7 @@
services: services:
traefik: traefik:
image: "traefik:v3.6" image: "traefik:v3.7"
container_name: "traefik" container_name: "traefik"
command: command:
#- "--log.level=DEBUG" #- "--log.level=DEBUG"
@@ -1,7 +1,7 @@
services: services:
traefik: traefik:
image: "traefik:v3.6" image: "traefik:v3.7"
container_name: "traefik" container_name: "traefik"
command: command:
#- "--log.level=DEBUG" #- "--log.level=DEBUG"
@@ -29,7 +29,7 @@ Create a `docker-compose.yml` file with the following content:
services: services:
traefik: traefik:
image: "traefik:v3.6" image: "traefik:v3.7"
... ...
networks: networks:
- traefiknet - traefiknet
+78 -78
View File
@@ -43,7 +43,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -56,7 +56,7 @@ spec:
description: |- description: |-
ParentRefs defines references to parent IngressRoute resources for multi-layer routing. ParentRefs defines references to parent IngressRoute resources for multi-layer routing.
When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers. When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers.
More info: https://doc.traefik.io/traefik/v3.6/routing/routers/#parentrefs More info: https://doc.traefik.io/traefik/v3.7/routing/routers/#parentrefs
items: items:
description: IngressRouteRef is a reference to an IngressRoute resource. description: IngressRouteRef is a reference to an IngressRoute resource.
properties: properties:
@@ -88,12 +88,12 @@ spec:
match: match:
description: |- description: |-
Match defines the router's rule. Match defines the router's rule.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/
type: string type: string
middlewares: middlewares:
description: |- description: |-
Middlewares defines the list of references to Middleware resources. Middlewares defines the list of references to Middleware resources.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/middleware/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/middleware/
items: items:
description: MiddlewareRef is a reference to a Middleware description: MiddlewareRef is a reference to a Middleware
resource. resource.
@@ -113,7 +113,7 @@ spec:
observability: observability:
description: |- description: |-
Observability defines the observability configuration for a router. Observability defines the observability configuration for a router.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/observability/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/observability/
properties: properties:
accessLogs: accessLogs:
description: AccessLogs enables access logs for this router. description: AccessLogs enables access logs for this router.
@@ -136,7 +136,7 @@ spec:
priority: priority:
description: |- description: |-
Priority defines the router's priority. Priority defines the router's priority.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#priority More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#priority
maximum: 9223372036854775000 maximum: 9223372036854775000
type: integer type: integer
services: services:
@@ -325,7 +325,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -396,7 +396,7 @@ spec:
syntax: syntax:
description: |- description: |-
Syntax defines the router's rule syntax. Syntax defines the router's rule syntax.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax
Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
type: string type: string
@@ -407,18 +407,18 @@ spec:
tls: tls:
description: |- description: |-
TLS defines the TLS configuration. TLS defines the TLS configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/router/#tls More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/router/#tls
properties: properties:
certResolver: certResolver:
description: |- description: |-
CertResolver defines the name of the certificate resolver to use. CertResolver defines the name of the certificate resolver to use.
Cert resolvers have to be configured in the static configuration. Cert resolvers have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
type: string type: string
domains: domains:
description: |- description: |-
Domains defines the list of domains that will be used to issue certificates. Domains defines the list of domains that will be used to issue certificates.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#domains More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#domains
items: items:
description: Domain holds a domain name with SANs. description: Domain holds a domain name with SANs.
properties: properties:
@@ -437,17 +437,17 @@ spec:
description: |- description: |-
Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
If not defined, the `default` TLSOption is used. If not defined, the `default` TLSOption is used.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-options/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-options/
properties: properties:
name: name:
description: |- description: |-
Name defines the name of the referenced TLSOption. Name defines the name of the referenced TLSOption.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
type: string type: string
namespace: namespace:
description: |- description: |-
Namespace defines the namespace of the referenced TLSOption. Namespace defines the namespace of the referenced TLSOption.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
type: string type: string
required: required:
- name - name
@@ -464,12 +464,12 @@ spec:
name: name:
description: |- description: |-
Name defines the name of the referenced TLSStore. Name defines the name of the referenced TLSStore.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
type: string type: string
namespace: namespace:
description: |- description: |-
Namespace defines the namespace of the referenced TLSStore. Namespace defines the namespace of the referenced TLSStore.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
type: string type: string
required: required:
- name - name
@@ -529,7 +529,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -546,7 +546,7 @@ spec:
match: match:
description: |- description: |-
Match defines the router's rule. Match defines the router's rule.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/
type: string type: string
middlewares: middlewares:
description: Middlewares defines the list of references to MiddlewareTCP description: Middlewares defines the list of references to MiddlewareTCP
@@ -570,7 +570,7 @@ spec:
priority: priority:
description: |- description: |-
Priority defines the router's priority. Priority defines the router's priority.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#priority More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#priority
maximum: 9223372036854775000 maximum: 9223372036854775000
type: integer type: integer
services: services:
@@ -612,7 +612,7 @@ spec:
proxyProtocol: proxyProtocol:
description: |- description: |-
ProxyProtocol defines the PROXY protocol configuration. ProxyProtocol defines the PROXY protocol configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/service/#proxy-protocol More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/service/#proxy-protocol
Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead. Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead.
properties: properties:
@@ -656,7 +656,7 @@ spec:
syntax: syntax:
description: |- description: |-
Syntax defines the router's rule syntax. Syntax defines the router's rule syntax.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax
Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
enum: enum:
@@ -670,18 +670,18 @@ spec:
tls: tls:
description: |- description: |-
TLS defines the TLS configuration on a layer 4 / TCP Route. TLS defines the TLS configuration on a layer 4 / TCP Route.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/router/#tls More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/router/#tls
properties: properties:
certResolver: certResolver:
description: |- description: |-
CertResolver defines the name of the certificate resolver to use. CertResolver defines the name of the certificate resolver to use.
Cert resolvers have to be configured in the static configuration. Cert resolvers have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
type: string type: string
domains: domains:
description: |- description: |-
Domains defines the list of domains that will be used to issue certificates. Domains defines the list of domains that will be used to issue certificates.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#domains More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#domains
items: items:
description: Domain holds a domain name with SANs. description: Domain holds a domain name with SANs.
properties: properties:
@@ -700,7 +700,7 @@ spec:
description: |- description: |-
Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
If not defined, the `default` TLSOption is used. If not defined, the `default` TLSOption is used.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#tls-options More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#tls-options
properties: properties:
name: name:
description: Name defines the name of the referenced Traefik description: Name defines the name of the referenced Traefik
@@ -792,7 +792,7 @@ spec:
description: |- description: |-
EntryPoints defines the list of entry point names to bind to. EntryPoints defines the list of entry point names to bind to.
Entry points have to be configured in the static configuration. Entry points have to be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
Default: all. Default: all.
items: items:
type: string type: string
@@ -884,7 +884,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
Middleware is the CRD implementation of a Traefik Middleware. Middleware is the CRD implementation of a Traefik Middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -910,7 +910,7 @@ spec:
description: |- description: |-
AddPrefix holds the add prefix middleware configuration. AddPrefix holds the add prefix middleware configuration.
This middleware updates the path of a request before forwarding it. This middleware updates the path of a request before forwarding it.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/addprefix/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/addprefix/
properties: properties:
prefix: prefix:
description: |- description: |-
@@ -925,12 +925,12 @@ spec:
description: |- description: |-
BasicAuth holds the basic auth middleware configuration. BasicAuth holds the basic auth middleware configuration.
This middleware restricts access to your services to known users. This middleware restricts access to your services to known users.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/
properties: properties:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/#headerfield
type: string type: string
realm: realm:
description: |- description: |-
@@ -951,7 +951,7 @@ spec:
description: |- description: |-
Buffering holds the buffering middleware configuration. Buffering holds the buffering middleware configuration.
This middleware retries or limits the size of requests that can be forwarded to backends. This middleware retries or limits the size of requests that can be forwarded to backends.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#maxrequestbodybytes More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#maxrequestbodybytes
properties: properties:
maxRequestBodyBytes: maxRequestBodyBytes:
description: |- description: |-
@@ -983,14 +983,14 @@ spec:
description: |- description: |-
RetryExpression defines the retry conditions. RetryExpression defines the retry conditions.
It is a logical combination of functions with operators AND (&&) and OR (||). It is a logical combination of functions with operators AND (&&) and OR (||).
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#retryexpression More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#retryexpression
type: string type: string
type: object type: object
chain: chain:
description: |- description: |-
Chain holds the configuration of the chain middleware. Chain holds the configuration of the chain middleware.
This middleware enables to define reusable combinations of other pieces of middleware. This middleware enables to define reusable combinations of other pieces of middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/chain/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/chain/
properties: properties:
middlewares: middlewares:
description: Middlewares is the list of MiddlewareRef which composes description: Middlewares is the list of MiddlewareRef which composes
@@ -1053,7 +1053,7 @@ spec:
description: |- description: |-
Compress holds the compress middleware configuration. Compress holds the compress middleware configuration.
This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression. This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/compress/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/compress/
properties: properties:
defaultEncoding: defaultEncoding:
description: DefaultEncoding specifies the default encoding if description: DefaultEncoding specifies the default encoding if
@@ -1104,12 +1104,12 @@ spec:
description: |- description: |-
DigestAuth holds the digest auth middleware configuration. DigestAuth holds the digest auth middleware configuration.
This middleware restricts access to your services to known users. This middleware restricts access to your services to known users.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/
properties: properties:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/#headerfield
type: string type: string
realm: realm:
description: |- description: |-
@@ -1162,7 +1162,7 @@ spec:
description: |- description: |-
ErrorPage holds the custom error middleware configuration. ErrorPage holds the custom error middleware configuration.
This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes. This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/
properties: properties:
query: query:
description: |- description: |-
@@ -1174,7 +1174,7 @@ spec:
service: service:
description: |- description: |-
Service defines the reference to a Kubernetes Service that will serve the error page. Service defines the reference to a Kubernetes Service that will serve the error page.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/#service More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/#service
properties: properties:
healthCheck: healthCheck:
description: Healthcheck defines health checks for ExternalName description: Healthcheck defines health checks for ExternalName
@@ -1354,7 +1354,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -1443,7 +1443,7 @@ spec:
description: |- description: |-
ForwardAuth holds the forward auth middleware configuration. ForwardAuth holds the forward auth middleware configuration.
This middleware delegates the request authentication to a Service. This middleware delegates the request authentication to a Service.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/
properties: properties:
addAuthCookiesToResponse: addAuthCookiesToResponse:
description: AddAuthCookiesToResponse defines the list of cookies description: AddAuthCookiesToResponse defines the list of cookies
@@ -1471,7 +1471,7 @@ spec:
authResponseHeadersRegex: authResponseHeadersRegex:
description: |- description: |-
AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex. AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex
type: string type: string
authSigninURL: authSigninURL:
description: AuthSigninURL specifies the URL to redirect to when description: AuthSigninURL specifies the URL to redirect to when
@@ -1484,7 +1484,7 @@ spec:
headerField: headerField:
description: |- description: |-
HeaderField defines a header field to store the authenticated user. HeaderField defines a header field to store the authenticated user.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#headerfield More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#headerfield
type: string type: string
maxBodySize: maxBodySize:
description: MaxBodySize defines the maximum body size in bytes description: MaxBodySize defines the maximum body size in bytes
@@ -1551,7 +1551,7 @@ spec:
description: |- description: |-
Headers holds the headers middleware configuration. Headers holds the headers middleware configuration.
This middleware manages the requests and responses headers. This middleware manages the requests and responses headers.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/headers/#customrequestheaders More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/headers/#customrequestheaders
properties: properties:
accessControlAllowCredentials: accessControlAllowCredentials:
description: AccessControlAllowCredentials defines whether the description: AccessControlAllowCredentials defines whether the
@@ -1723,7 +1723,7 @@ spec:
description: |- description: |-
InFlightReq holds the in-flight request middleware configuration. InFlightReq holds the in-flight request middleware configuration.
This middleware limits the number of requests being processed and served concurrently. This middleware limits the number of requests being processed and served concurrently.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/
properties: properties:
amount: amount:
description: |- description: |-
@@ -1737,12 +1737,12 @@ spec:
SourceCriterion defines what criterion is used to group requests as originating from a common source. SourceCriterion defines what criterion is used to group requests as originating from a common source.
If several strategies are defined at the same time, an error will be raised. If several strategies are defined at the same time, an error will be raised.
If none are set, the default is to use the requestHost. If none are set, the default is to use the requestHost.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/#sourcecriterion More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/#sourcecriterion
properties: properties:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -1778,12 +1778,12 @@ spec:
description: |- description: |-
IPAllowList holds the IP allowlist middleware configuration. IPAllowList holds the IP allowlist middleware configuration.
This middleware limits allowed requests based on the client IP. This middleware limits allowed requests based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/
properties: properties:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -1821,7 +1821,7 @@ spec:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -1852,7 +1852,7 @@ spec:
description: |- description: |-
PassTLSClientCert holds the pass TLS client cert middleware configuration. PassTLSClientCert holds the pass TLS client cert middleware configuration.
This middleware adds the selected data from the passed client TLS certificate to a header. This middleware adds the selected data from the passed client TLS certificate to a header.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/passtlsclientcert/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/passtlsclientcert/
properties: properties:
info: info:
description: Info selects the specific client certificate details description: Info selects the specific client certificate details
@@ -1955,13 +1955,13 @@ spec:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
description: |- description: |-
Plugin defines the middleware plugin configuration. Plugin defines the middleware plugin configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/#community-middlewares More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/#community-middlewares
type: object type: object
rateLimit: rateLimit:
description: |- description: |-
RateLimit holds the rate limit configuration. RateLimit holds the rate limit configuration.
This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is. This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/ratelimit/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/ratelimit/
properties: properties:
average: average:
description: |- description: |-
@@ -2080,7 +2080,7 @@ spec:
ipStrategy: ipStrategy:
description: |- description: |-
IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
properties: properties:
depth: depth:
description: Depth tells Traefik to use the X-Forwarded-For description: Depth tells Traefik to use the X-Forwarded-For
@@ -2116,7 +2116,7 @@ spec:
description: |- description: |-
RedirectRegex holds the redirect regex middleware configuration. RedirectRegex holds the redirect regex middleware configuration.
This middleware redirects a request using regex matching and replacement. This middleware redirects a request using regex matching and replacement.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectregex/#regex More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectregex/#regex
properties: properties:
permanent: permanent:
description: Permanent defines whether the redirection is permanent description: Permanent defines whether the redirection is permanent
@@ -2135,7 +2135,7 @@ spec:
description: |- description: |-
RedirectScheme holds the redirect scheme middleware configuration. RedirectScheme holds the redirect scheme middleware configuration.
This middleware redirects requests from a scheme/port to another. This middleware redirects requests from a scheme/port to another.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectscheme/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectscheme/
properties: properties:
permanent: permanent:
description: |- description: |-
@@ -2153,7 +2153,7 @@ spec:
description: |- description: |-
ReplacePath holds the replace path middleware configuration. ReplacePath holds the replace path middleware configuration.
This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header. This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepath/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepath/
properties: properties:
path: path:
description: Path defines the path to use as replacement in the description: Path defines the path to use as replacement in the
@@ -2164,7 +2164,7 @@ spec:
description: |- description: |-
ReplacePathRegex holds the replace path regex middleware configuration. ReplacePathRegex holds the replace path regex middleware configuration.
This middleware replaces the path of a URL using regex matching and replacement. This middleware replaces the path of a URL using regex matching and replacement.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepathregex/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepathregex/
properties: properties:
regex: regex:
description: Regex defines the regular expression used to match description: Regex defines the regular expression used to match
@@ -2180,7 +2180,7 @@ spec:
Retry holds the retry middleware configuration. Retry holds the retry middleware configuration.
This middleware reissues requests a given number of times to a backend server if that server does not reply. This middleware reissues requests a given number of times to a backend server if that server does not reply.
As soon as the server answers, the middleware stops retrying, regardless of the response status. As soon as the server answers, the middleware stops retrying, regardless of the response status.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/retry/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/retry/
properties: properties:
attempts: attempts:
description: Attempts defines how many times the request should description: Attempts defines how many times the request should
@@ -2237,7 +2237,7 @@ spec:
description: |- description: |-
StripPrefix holds the strip prefix middleware configuration. StripPrefix holds the strip prefix middleware configuration.
This middleware removes the specified prefixes from the URL path. This middleware removes the specified prefixes from the URL path.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefix/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefix/
properties: properties:
forceSlash: forceSlash:
description: |- description: |-
@@ -2256,7 +2256,7 @@ spec:
description: |- description: |-
StripPrefixRegex holds the strip prefix regex middleware configuration. StripPrefixRegex holds the strip prefix regex middleware configuration.
This middleware removes the matching prefixes from the URL path. This middleware removes the matching prefixes from the URL path.
More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefixregex/ More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefixregex/
properties: properties:
regex: regex:
description: Regex defines the regular expression to match the description: Regex defines the regular expression to match the
@@ -2293,7 +2293,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
MiddlewareTCP is the CRD implementation of a Traefik TCP middleware. MiddlewareTCP is the CRD implementation of a Traefik TCP middleware.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/overview/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/overview/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2330,7 +2330,7 @@ spec:
description: |- description: |-
IPAllowList defines the IPAllowList middleware configuration. IPAllowList defines the IPAllowList middleware configuration.
This middleware accepts/refuses connections based on the client IP. This middleware accepts/refuses connections based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipallowlist/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipallowlist/
properties: properties:
sourceRange: sourceRange:
description: SourceRange defines the allowed IPs (or ranges of description: SourceRange defines the allowed IPs (or ranges of
@@ -2343,7 +2343,7 @@ spec:
description: |- description: |-
IPWhiteList defines the IPWhiteList middleware configuration. IPWhiteList defines the IPWhiteList middleware configuration.
This middleware accepts/refuses connections based on the client IP. This middleware accepts/refuses connections based on the client IP.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipwhitelist/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipwhitelist/
Deprecated: please use IPAllowList instead. Deprecated: please use IPAllowList instead.
properties: properties:
@@ -2384,7 +2384,7 @@ spec:
ServersTransport is the CRD implementation of a ServersTransport. ServersTransport is the CRD implementation of a ServersTransport.
If no serversTransport is specified, the default@internal will be used. If no serversTransport is specified, the default@internal will be used.
The default@internal serversTransport is created from the static configuration. The default@internal serversTransport is created from the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/serverstransport/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/serverstransport/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2568,7 +2568,7 @@ spec:
ServersTransportTCP is the CRD implementation of a TCPServersTransport. ServersTransportTCP is the CRD implementation of a TCPServersTransport.
If no tcpServersTransport is specified, a default one named default@internal will be used. If no tcpServersTransport is specified, a default one named default@internal will be used.
The default@internal tcpServersTransport can be configured in the static configuration. The default@internal tcpServersTransport can be configured in the static configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/serverstransport/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/serverstransport/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2723,7 +2723,7 @@ spec:
openAPIV3Schema: openAPIV3Schema:
description: |- description: |-
TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection. TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2748,14 +2748,14 @@ spec:
alpnProtocols: alpnProtocols:
description: |- description: |-
ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference. ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols
items: items:
type: string type: string
type: array type: array
cipherSuites: cipherSuites:
description: |- description: |-
CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2. CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites
items: items:
type: string type: string
type: array type: array
@@ -2783,7 +2783,7 @@ spec:
curvePreferences: curvePreferences:
description: |- description: |-
CurvePreferences defines the preferred elliptic curves. CurvePreferences defines the preferred elliptic curves.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences
items: items:
type: string type: string
type: array type: array
@@ -2844,7 +2844,7 @@ spec:
TLSStore is the CRD implementation of a Traefik TLS Store. TLSStore is the CRD implementation of a Traefik TLS Store.
For the time being, only the TLSStore named default is supported. For the time being, only the TLSStore named default is supported.
This means that you cannot have two stores that are named default in different Kubernetes namespaces. This means that you cannot have two stores that are named default in different Kubernetes namespaces.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -2942,7 +2942,7 @@ spec:
TraefikService object allows to: TraefikService object allows to:
- Apply weight to Services on load-balancing - Apply weight to Services on load-balancing
- Mirror traffic on services - Mirror traffic on services
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/ More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/
properties: properties:
apiVersion: apiVersion:
description: |- description: |-
@@ -3166,7 +3166,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -3413,7 +3413,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -3673,7 +3673,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4039,7 +4039,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4188,7 +4188,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4441,7 +4441,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines the sticky sessions configuration. Sticky defines the sticky sessions configuration.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
@@ -4511,7 +4511,7 @@ spec:
sticky: sticky:
description: |- description: |-
Sticky defines whether sticky sessions are enabled. Sticky defines whether sticky sessions are enabled.
More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing
properties: properties:
cookie: cookie:
description: Cookie defines the sticky cookie configuration. description: Cookie defines the sticky cookie configuration.
+28 -28
View File
@@ -271,7 +271,7 @@ func (c *configuration) deprecationNotice(logger zerolog.Logger) bool {
if c.Pilot != nil { if c.Pilot != nil {
incompatible = true incompatible = true
logger.Error().Msg("Pilot configuration has been removed in v3, please remove all Pilot-related install configuration for Traefik to start." + logger.Error().Msg("Pilot configuration has been removed in v3, please remove all Pilot-related install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#pilot") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#pilot")
} }
incompatibleCore := c.Core.deprecationNotice(logger) incompatibleCore := c.Core.deprecationNotice(logger)
@@ -289,7 +289,7 @@ func (c *core) deprecationNotice(logger zerolog.Logger) bool {
if c != nil && c.DefaultRuleSyntax != "" { if c != nil && c.DefaultRuleSyntax != "" {
logger.Error().Msg("`Core.DefaultRuleSyntax` option has been deprecated in v3.4, and will be removed in the next major version." + logger.Error().Msg("`Core.DefaultRuleSyntax` option has been deprecated in v3.4, and will be removed in the next major version." +
" Please consider migrating all router rules to v3 syntax." + " Please consider migrating all router rules to v3 syntax." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#router-rule-matchers") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#router-rule-matchers")
} }
return false return false
@@ -319,14 +319,14 @@ func (p *providers) deprecationNotice(logger zerolog.Logger) bool {
if p.Marathon != nil { if p.Marathon != nil {
incompatible = true incompatible = true
logger.Error().Msg("Marathon provider has been removed in v3, please remove all Marathon-related install configuration for Traefik to start." + logger.Error().Msg("Marathon provider has been removed in v3, please remove all Marathon-related install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#marathon-provider" + " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#marathon-provider" +
"") "")
} }
if p.Rancher != nil { if p.Rancher != nil {
incompatible = true incompatible = true
logger.Error().Msg("Rancher provider has been removed in v3, please remove all Rancher-related install configuration for Traefik to start." + logger.Error().Msg("Rancher provider has been removed in v3, please remove all Rancher-related install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#rancher-v1-provider") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#rancher-v1-provider")
} }
dockerIncompatible := p.Docker.deprecationNotice(logger) dockerIncompatible := p.Docker.deprecationNotice(logger)
@@ -368,14 +368,14 @@ func (d *docker) deprecationNotice(logger zerolog.Logger) bool {
if d.SwarmMode != nil { if d.SwarmMode != nil {
incompatible = true incompatible = true
logger.Error().Msg("Docker provider `swarmMode` option has been removed in v3, please use the Swarm Provider instead." + logger.Error().Msg("Docker provider `swarmMode` option has been removed in v3, please use the Swarm Provider instead." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#swarmmode") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#swarmmode")
} }
if d.TLS != nil && d.TLS.CAOptional != nil { if d.TLS != nil && d.TLS.CAOptional != nil {
incompatible = true incompatible = true
logger.Error().Msg("Docker provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." + logger.Error().Msg("Docker provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." +
" Please remove all occurrences from the install configuration for Traefik to start." + " Please remove all occurrences from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tlscaoptional") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tlscaoptional")
} }
return incompatible return incompatible
@@ -416,7 +416,7 @@ func (e *etcd) deprecationNotice(logger zerolog.Logger) bool {
incompatible = true incompatible = true
logger.Error().Msg("ETCD provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." + logger.Error().Msg("ETCD provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." +
" Please remove all occurrences from the install configuration for Traefik to start." + " Please remove all occurrences from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tlscaoptional_3") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tlscaoptional_3")
} }
return incompatible return incompatible
@@ -437,7 +437,7 @@ func (r *redis) deprecationNotice(logger zerolog.Logger) bool {
incompatible = true incompatible = true
logger.Error().Msg("Redis provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." + logger.Error().Msg("Redis provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." +
" Please remove all occurrences from the install configuration for Traefik to start." + " Please remove all occurrences from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tlscaoptional_4") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tlscaoptional_4")
} }
return incompatible return incompatible
@@ -458,14 +458,14 @@ func (c *consul) deprecationNotice(logger zerolog.Logger) bool {
if c.Namespace != nil { if c.Namespace != nil {
incompatible = true incompatible = true
logger.Error().Msg("Consul provider `namespace` option has been removed, please use the `namespaces` option instead." + logger.Error().Msg("Consul provider `namespace` option has been removed, please use the `namespaces` option instead." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#namespace") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#namespace")
} }
if c.TLS != nil && c.TLS.CAOptional != nil { if c.TLS != nil && c.TLS.CAOptional != nil {
incompatible = true incompatible = true
logger.Error().Msg("Consul provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." + logger.Error().Msg("Consul provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." +
" Please remove all occurrences from the install configuration for Traefik to start." + " Please remove all occurrences from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tlscaoptional_1") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tlscaoptional_1")
} }
return incompatible return incompatible
@@ -490,14 +490,14 @@ func (c *consulCatalog) deprecationNotice(logger zerolog.Logger) bool {
if c.Namespace != nil { if c.Namespace != nil {
incompatible = true incompatible = true
logger.Error().Msg("ConsulCatalog provider `namespace` option has been removed, please use the `namespaces` option instead." + logger.Error().Msg("ConsulCatalog provider `namespace` option has been removed, please use the `namespaces` option instead." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#namespace_1") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#namespace_1")
} }
if c.Endpoint != nil && c.Endpoint.TLS != nil && c.Endpoint.TLS.CAOptional != nil { if c.Endpoint != nil && c.Endpoint.TLS != nil && c.Endpoint.TLS.CAOptional != nil {
incompatible = true incompatible = true
logger.Error().Msg("ConsulCatalog provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." + logger.Error().Msg("ConsulCatalog provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." +
" Please remove all occurrences from the install configuration for Traefik to start." + " Please remove all occurrences from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#endpointtlscaoptional") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#endpointtlscaoptional")
} }
return incompatible return incompatible
@@ -518,14 +518,14 @@ func (n *nomad) deprecationNotice(logger zerolog.Logger) bool {
if n.Namespace != nil { if n.Namespace != nil {
incompatible = true incompatible = true
logger.Error().Msg("Nomad provider `namespace` option has been removed, please use the `namespaces` option instead." + logger.Error().Msg("Nomad provider `namespace` option has been removed, please use the `namespaces` option instead." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#namespace_2") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#namespace_2")
} }
if n.Endpoint != nil && n.Endpoint.TLS != nil && n.Endpoint.TLS.CAOptional != nil { if n.Endpoint != nil && n.Endpoint.TLS != nil && n.Endpoint.TLS.CAOptional != nil {
incompatible = true incompatible = true
logger.Error().Msg("Nomad provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." + logger.Error().Msg("Nomad provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." +
" Please remove all occurrences from the install configuration for Traefik to start." + " Please remove all occurrences from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#endpointtlscaoptional_1") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#endpointtlscaoptional_1")
} }
return incompatible return incompatible
@@ -546,7 +546,7 @@ func (h *http) deprecationNotice(logger zerolog.Logger) bool {
incompatible = true incompatible = true
logger.Error().Msg("HTTP provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." + logger.Error().Msg("HTTP provider `tls.CAOptional` option has been removed in v3, as TLS client authentication is a server side option (see https://github.com/golang/go/blob/740a490f71d026bb7d2d13cb8fa2d6d6e0572b70/src/crypto/tls/common.go#L634)." +
" Please remove all occurrences from the install configuration for Traefik to start." + " Please remove all occurrences from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tlscaoptional_2") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tlscaoptional_2")
} }
return incompatible return incompatible
@@ -564,7 +564,7 @@ func (i *ingress) deprecationNotice(logger zerolog.Logger) {
if i.DisableIngressClassLookup != nil { if i.DisableIngressClassLookup != nil {
logger.Error().Msg("Kubernetes Ingress provider `disableIngressClassLookup` option has been deprecated in v3.1, and will be removed in the next major version." + logger.Error().Msg("Kubernetes Ingress provider `disableIngressClassLookup` option has been deprecated in v3.1, and will be removed in the next major version." +
" Please use the `disableClusterScopeResources` option instead." + " Please use the `disableClusterScopeResources` option instead." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v3/#ingressclass-lookup") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v3/#ingressclass-lookup")
} }
} }
@@ -582,7 +582,7 @@ func (e *experimental) deprecationNotice(logger zerolog.Logger) bool {
if e.HTTP3 != nil { if e.HTTP3 != nil {
logger.Error().Msg("HTTP3 is not an experimental feature in v3 and the associated enablement has been removed." + logger.Error().Msg("HTTP3 is not an experimental feature in v3 and the associated enablement has been removed." +
" Please remove its usage from the install configuration for Traefik to start." + " Please remove its usage from the install configuration for Traefik to start." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#http3") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#http3")
return true return true
} }
@@ -590,13 +590,13 @@ func (e *experimental) deprecationNotice(logger zerolog.Logger) bool {
if e.KubernetesGateway != nil { if e.KubernetesGateway != nil {
logger.Error().Msg("KubernetesGateway provider is not an experimental feature starting with v3.1." + logger.Error().Msg("KubernetesGateway provider is not an experimental feature starting with v3.1." +
" Please remove its usage from the install configuration." + " Please remove its usage from the install configuration." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v3/#gateway-api-kubernetesgateway-provider") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v3/#gateway-api-kubernetesgateway-provider")
} }
if e.KubernetesIngressNGINX != nil { if e.KubernetesIngressNGINX != nil {
logger.Error().Msg("KubernetesIngressNGINX provider is not an experimental feature starting with v3.6.2." + logger.Error().Msg("KubernetesIngressNGINX provider is not an experimental feature starting with v3.7.2." +
" Please remove its usage from the install configuration." + " Please remove its usage from the install configuration." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v3/#ingress-nginx-provider") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v3/#ingress-nginx-provider")
} }
return false return false
@@ -623,7 +623,7 @@ func (t *tracing) deprecationNotice(logger zerolog.Logger) bool {
if t.SpanNameLimit != nil { if t.SpanNameLimit != nil {
incompatible = true incompatible = true
logger.Error().Msg("SpanNameLimit option for Tracing has been removed in v3, as Span names are now of a fixed length." + logger.Error().Msg("SpanNameLimit option for Tracing has been removed in v3, as Span names are now of a fixed length." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tracing") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tracing")
} }
if t.GlobalAttributes != nil { if t.GlobalAttributes != nil {
@@ -631,49 +631,49 @@ func (t *tracing) deprecationNotice(logger zerolog.Logger) bool {
logger.Error().Msg("`tracing.globalAttributes` option has been deprecated in v3.3, and will be removed in the next major version." + logger.Error().Msg("`tracing.globalAttributes` option has been deprecated in v3.3, and will be removed in the next major version." +
" Please use the `tracing.resourceAttributes` option instead." + " Please use the `tracing.resourceAttributes` option instead." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v3/#tracing-global-attributes") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v3/#tracing-global-attributes")
} }
if t.Jaeger != nil { if t.Jaeger != nil {
incompatible = true incompatible = true
logger.Error().Msg("Jaeger Tracing backend has been removed in v3, please remove all Jaeger-related Tracing install configuration for Traefik to start." + logger.Error().Msg("Jaeger Tracing backend has been removed in v3, please remove all Jaeger-related Tracing install configuration for Traefik to start." +
" In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." + " In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tracing") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tracing")
} }
if t.Zipkin != nil { if t.Zipkin != nil {
incompatible = true incompatible = true
logger.Error().Msg("Zipkin Tracing backend has been removed in v3, please remove all Zipkin-related Tracing install configuration for Traefik to start." + logger.Error().Msg("Zipkin Tracing backend has been removed in v3, please remove all Zipkin-related Tracing install configuration for Traefik to start." +
" In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." + " In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tracing") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tracing")
} }
if t.Datadog != nil { if t.Datadog != nil {
incompatible = true incompatible = true
logger.Error().Msg("Datadog Tracing backend has been removed in v3, please remove all Datadog-related Tracing install configuration for Traefik to start." + logger.Error().Msg("Datadog Tracing backend has been removed in v3, please remove all Datadog-related Tracing install configuration for Traefik to start." +
" In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." + " In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tracing") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tracing")
} }
if t.Instana != nil { if t.Instana != nil {
incompatible = true incompatible = true
logger.Error().Msg("Instana Tracing backend has been removed in v3, please remove all Instana-related Tracing install configuration for Traefik to start." + logger.Error().Msg("Instana Tracing backend has been removed in v3, please remove all Instana-related Tracing install configuration for Traefik to start." +
" In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." + " In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tracing") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tracing")
} }
if t.Haystack != nil { if t.Haystack != nil {
incompatible = true incompatible = true
logger.Error().Msg("Haystack Tracing backend has been removed in v3, please remove all Haystack-related Tracing install configuration for Traefik to start." + logger.Error().Msg("Haystack Tracing backend has been removed in v3, please remove all Haystack-related Tracing install configuration for Traefik to start." +
" In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." + " In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tracing") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tracing")
} }
if t.Elastic != nil { if t.Elastic != nil {
incompatible = true incompatible = true
logger.Error().Msg("Elastic Tracing backend has been removed in v3, please remove all Elastic-related Tracing install configuration for Traefik to start." + logger.Error().Msg("Elastic Tracing backend has been removed in v3, please remove all Elastic-related Tracing install configuration for Traefik to start." +
" In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." + " In v3, Open Telemetry replaces specific tracing backend implementations, and an collector/exporter can be used to export metrics in a vendor specific format." +
" For more information please read the migration guide: https://doc.traefik.io/traefik/v3.6/migrate/v2-to-v3-details/#tracing") " For more information please read the migration guide: https://doc.traefik.io/traefik/v3.7/migrate/v2-to-v3-details/#tracing")
} }
return incompatible return incompatible
+25 -25
View File
@@ -88,7 +88,7 @@ type ContentType struct {
// AddPrefix holds the add prefix middleware configuration. // AddPrefix holds the add prefix middleware configuration.
// This middleware updates the path of a request before forwarding it. // This middleware updates the path of a request before forwarding it.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/addprefix/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/addprefix/
type AddPrefix struct { type AddPrefix struct {
// Prefix is the string to add before the current path in the requested URL. // Prefix is the string to add before the current path in the requested URL.
// It should include a leading slash (/). // It should include a leading slash (/).
@@ -100,7 +100,7 @@ type AddPrefix struct {
// BasicAuth holds the basic auth middleware configuration. // BasicAuth holds the basic auth middleware configuration.
// This middleware restricts access to your services to known users. // This middleware restricts access to your services to known users.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/basicauth/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/basicauth/
type BasicAuth struct { type BasicAuth struct {
// Users is an array of authorized users. // Users is an array of authorized users.
// Each user must be declared using the name:hashed-password format. // Each user must be declared using the name:hashed-password format.
@@ -115,7 +115,7 @@ type BasicAuth struct {
// Default: false. // Default: false.
RemoveHeader bool `json:"removeHeader,omitempty" toml:"removeHeader,omitempty" yaml:"removeHeader,omitempty" export:"true"` RemoveHeader bool `json:"removeHeader,omitempty" toml:"removeHeader,omitempty" yaml:"removeHeader,omitempty" export:"true"`
// HeaderField defines a header field to store the authenticated user. // HeaderField defines a header field to store the authenticated user.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/basicauth/#headerfield // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/basicauth/#headerfield
HeaderField string `json:"headerField,omitempty" toml:"headerField,omitempty" yaml:"headerField,omitempty" export:"true"` HeaderField string `json:"headerField,omitempty" toml:"headerField,omitempty" yaml:"headerField,omitempty" export:"true"`
} }
@@ -123,7 +123,7 @@ type BasicAuth struct {
// Buffering holds the buffering middleware configuration. // Buffering holds the buffering middleware configuration.
// This middleware retries or limits the size of requests that can be forwarded to backends. // This middleware retries or limits the size of requests that can be forwarded to backends.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#maxrequestbodybytes // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#maxrequestbodybytes
type Buffering struct { type Buffering struct {
// MaxRequestBodyBytes defines the maximum allowed body size for the request (in bytes). // MaxRequestBodyBytes defines the maximum allowed body size for the request (in bytes).
// If the request exceeds the allowed size, it is not forwarded to the service, and the client gets a 413 (Request Entity Too Large) response. // If the request exceeds the allowed size, it is not forwarded to the service, and the client gets a 413 (Request Entity Too Large) response.
@@ -141,7 +141,7 @@ type Buffering struct {
MemResponseBodyBytes int64 `json:"memResponseBodyBytes,omitempty" toml:"memResponseBodyBytes,omitempty" yaml:"memResponseBodyBytes,omitempty" export:"true"` MemResponseBodyBytes int64 `json:"memResponseBodyBytes,omitempty" toml:"memResponseBodyBytes,omitempty" yaml:"memResponseBodyBytes,omitempty" export:"true"`
// RetryExpression defines the retry conditions. // RetryExpression defines the retry conditions.
// It is a logical combination of functions with operators AND (&&) and OR (||). // It is a logical combination of functions with operators AND (&&) and OR (||).
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#retryexpression // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#retryexpression
RetryExpression string `json:"retryExpression,omitempty" toml:"retryExpression,omitempty" yaml:"retryExpression,omitempty" export:"true"` RetryExpression string `json:"retryExpression,omitempty" toml:"retryExpression,omitempty" yaml:"retryExpression,omitempty" export:"true"`
// Only configurable via code, not via configuration files. // Only configurable via code, not via configuration files.
@@ -162,7 +162,7 @@ type Chain struct {
// CircuitBreaker holds the circuit breaker middleware configuration. // CircuitBreaker holds the circuit breaker middleware configuration.
// This middleware protects the system from stacking requests to unhealthy services, resulting in cascading failures. // This middleware protects the system from stacking requests to unhealthy services, resulting in cascading failures.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/circuitbreaker/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/circuitbreaker/
type CircuitBreaker struct { type CircuitBreaker struct {
// Expression defines the expression that, once matched, opens the circuit breaker and applies the fallback mechanism instead of calling the services. // Expression defines the expression that, once matched, opens the circuit breaker and applies the fallback mechanism instead of calling the services.
Expression string `json:"expression,omitempty" toml:"expression,omitempty" yaml:"expression,omitempty" export:"true"` Expression string `json:"expression,omitempty" toml:"expression,omitempty" yaml:"expression,omitempty" export:"true"`
@@ -212,7 +212,7 @@ func (c *Compress) SetDefaults() {
// DigestAuth holds the digest auth middleware configuration. // DigestAuth holds the digest auth middleware configuration.
// This middleware restricts access to your services to known users. // This middleware restricts access to your services to known users.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/digestauth/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/digestauth/
type DigestAuth struct { type DigestAuth struct {
// Users defines the authorized users. // Users defines the authorized users.
// Each user should be declared using the name:realm:encoded-password format. // Each user should be declared using the name:realm:encoded-password format.
@@ -225,7 +225,7 @@ type DigestAuth struct {
// Default: traefik. // Default: traefik.
Realm string `json:"realm,omitempty" toml:"realm,omitempty" yaml:"realm,omitempty"` Realm string `json:"realm,omitempty" toml:"realm,omitempty" yaml:"realm,omitempty"`
// HeaderField defines a header field to store the authenticated user. // HeaderField defines a header field to store the authenticated user.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/basicauth/#headerfield // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/basicauth/#headerfield
HeaderField string `json:"headerField,omitempty" toml:"headerField,omitempty" yaml:"headerField,omitempty" export:"true"` HeaderField string `json:"headerField,omitempty" toml:"headerField,omitempty" yaml:"headerField,omitempty" export:"true"`
} }
@@ -280,7 +280,7 @@ type ErrorPage struct {
// ForwardAuth holds the forward auth middleware configuration. // ForwardAuth holds the forward auth middleware configuration.
// This middleware delegates the request authentication to a Service. // This middleware delegates the request authentication to a Service.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/forwardauth/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/forwardauth/
type ForwardAuth struct { type ForwardAuth struct {
// Address defines the authentication server address. // Address defines the authentication server address.
Address string `json:"address,omitempty" toml:"address,omitempty" yaml:"address,omitempty"` Address string `json:"address,omitempty" toml:"address,omitempty" yaml:"address,omitempty"`
@@ -291,7 +291,7 @@ type ForwardAuth struct {
// AuthResponseHeaders defines the list of headers to copy from the authentication server response and set on forwarded request, replacing any existing conflicting headers. // AuthResponseHeaders defines the list of headers to copy from the authentication server response and set on forwarded request, replacing any existing conflicting headers.
AuthResponseHeaders []string `json:"authResponseHeaders,omitempty" toml:"authResponseHeaders,omitempty" yaml:"authResponseHeaders,omitempty" export:"true"` AuthResponseHeaders []string `json:"authResponseHeaders,omitempty" toml:"authResponseHeaders,omitempty" yaml:"authResponseHeaders,omitempty" export:"true"`
// AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex. // AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/forwardauth/#authresponseheadersregex // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/forwardauth/#authresponseheadersregex
AuthResponseHeadersRegex string `json:"authResponseHeadersRegex,omitempty" toml:"authResponseHeadersRegex,omitempty" yaml:"authResponseHeadersRegex,omitempty" export:"true"` AuthResponseHeadersRegex string `json:"authResponseHeadersRegex,omitempty" toml:"authResponseHeadersRegex,omitempty" yaml:"authResponseHeadersRegex,omitempty" export:"true"`
// AuthRequestHeaders defines the list of the headers to copy from the request to the authentication server. // AuthRequestHeaders defines the list of the headers to copy from the request to the authentication server.
// If not set or empty then all request headers are passed. // If not set or empty then all request headers are passed.
@@ -301,7 +301,7 @@ type ForwardAuth struct {
// AddAuthCookiesToResponse defines the list of cookies to copy from the authentication server response to the response. // AddAuthCookiesToResponse defines the list of cookies to copy from the authentication server response to the response.
AddAuthCookiesToResponse []string `json:"addAuthCookiesToResponse,omitempty" toml:"addAuthCookiesToResponse,omitempty" yaml:"addAuthCookiesToResponse,omitempty" export:"true"` AddAuthCookiesToResponse []string `json:"addAuthCookiesToResponse,omitempty" toml:"addAuthCookiesToResponse,omitempty" yaml:"addAuthCookiesToResponse,omitempty" export:"true"`
// HeaderField defines a header field to store the authenticated user. // HeaderField defines a header field to store the authenticated user.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/forwardauth/#headerfield // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/forwardauth/#headerfield
HeaderField string `json:"headerField,omitempty" toml:"headerField,omitempty" yaml:"headerField,omitempty" export:"true"` HeaderField string `json:"headerField,omitempty" toml:"headerField,omitempty" yaml:"headerField,omitempty" export:"true"`
// ForwardBody defines whether to send the request body to the authentication server. // ForwardBody defines whether to send the request body to the authentication server.
ForwardBody bool `json:"forwardBody,omitempty" toml:"forwardBody,omitempty" yaml:"forwardBody,omitempty" export:"true"` ForwardBody bool `json:"forwardBody,omitempty" toml:"forwardBody,omitempty" yaml:"forwardBody,omitempty" export:"true"`
@@ -341,7 +341,7 @@ type ClientTLS struct {
// Headers holds the headers middleware configuration. // Headers holds the headers middleware configuration.
// This middleware manages the requests and responses headers. // This middleware manages the requests and responses headers.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/headers/#customrequestheaders // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/headers/#customrequestheaders
type Headers struct { type Headers struct {
// CustomRequestHeaders defines the header names and values to apply to the request. // CustomRequestHeaders defines the header names and values to apply to the request.
CustomRequestHeaders map[string]string `json:"customRequestHeaders,omitempty" toml:"customRequestHeaders,omitempty" yaml:"customRequestHeaders,omitempty" export:"true"` CustomRequestHeaders map[string]string `json:"customRequestHeaders,omitempty" toml:"customRequestHeaders,omitempty" yaml:"customRequestHeaders,omitempty" export:"true"`
@@ -471,7 +471,7 @@ func (h *Headers) HasSecureHeadersDefined() bool {
// +k8s:deepcopy-gen=true // +k8s:deepcopy-gen=true
// IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP. // IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy
type IPStrategy struct { type IPStrategy struct {
// Depth tells Traefik to use the X-Forwarded-For header and take the IP located at the depth position (starting from the right). // Depth tells Traefik to use the X-Forwarded-For header and take the IP located at the depth position (starting from the right).
// +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Minimum=0
@@ -526,7 +526,7 @@ func (s *IPStrategy) Get() (ip.Strategy, error) {
// IPWhiteList holds the IP whitelist middleware configuration. // IPWhiteList holds the IP whitelist middleware configuration.
// This middleware limits allowed requests based on the client IP. // This middleware limits allowed requests based on the client IP.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipwhitelist/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipwhitelist/
// //
// Deprecated: please use IPAllowList instead. // Deprecated: please use IPAllowList instead.
type IPWhiteList struct { type IPWhiteList struct {
@@ -539,7 +539,7 @@ type IPWhiteList struct {
// IPAllowList holds the IP allowlist middleware configuration. // IPAllowList holds the IP allowlist middleware configuration.
// This middleware limits allowed requests based on the client IP. // This middleware limits allowed requests based on the client IP.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/
type IPAllowList struct { type IPAllowList struct {
// SourceRange defines the set of allowed IPs (or ranges of allowed IPs by using CIDR notation). // SourceRange defines the set of allowed IPs (or ranges of allowed IPs by using CIDR notation).
SourceRange []string `json:"sourceRange,omitempty" toml:"sourceRange,omitempty" yaml:"sourceRange,omitempty"` SourceRange []string `json:"sourceRange,omitempty" toml:"sourceRange,omitempty" yaml:"sourceRange,omitempty"`
@@ -553,7 +553,7 @@ type IPAllowList struct {
// InFlightReq holds the in-flight request middleware configuration. // InFlightReq holds the in-flight request middleware configuration.
// This middleware limits the number of requests being processed and served concurrently. // This middleware limits the number of requests being processed and served concurrently.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/
type InFlightReq struct { type InFlightReq struct {
// Amount defines the maximum amount of allowed simultaneous in-flight request. // Amount defines the maximum amount of allowed simultaneous in-flight request.
// The middleware responds with HTTP 429 Too Many Requests if there are already amount requests in progress (based on the same sourceCriterion strategy). // The middleware responds with HTTP 429 Too Many Requests if there are already amount requests in progress (based on the same sourceCriterion strategy).
@@ -562,7 +562,7 @@ type InFlightReq struct {
// SourceCriterion defines what criterion is used to group requests as originating from a common source. // SourceCriterion defines what criterion is used to group requests as originating from a common source.
// If several strategies are defined at the same time, an error will be raised. // If several strategies are defined at the same time, an error will be raised.
// If none are set, the default is to use the requestHost. // If none are set, the default is to use the requestHost.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/#sourcecriterion // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/#sourcecriterion
SourceCriterion *SourceCriterion `json:"sourceCriterion,omitempty" toml:"sourceCriterion,omitempty" yaml:"sourceCriterion,omitempty" export:"true"` SourceCriterion *SourceCriterion `json:"sourceCriterion,omitempty" toml:"sourceCriterion,omitempty" yaml:"sourceCriterion,omitempty" export:"true"`
} }
@@ -570,7 +570,7 @@ type InFlightReq struct {
// PassTLSClientCert holds the pass TLS client cert middleware configuration. // PassTLSClientCert holds the pass TLS client cert middleware configuration.
// This middleware adds the selected data from the passed client TLS certificate to a header. // This middleware adds the selected data from the passed client TLS certificate to a header.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/passtlsclientcert/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/passtlsclientcert/
type PassTLSClientCert struct { type PassTLSClientCert struct {
// PEM sets the X-Forwarded-Tls-Client-Cert header with the certificate. // PEM sets the X-Forwarded-Tls-Client-Cert header with the certificate.
PEM bool `json:"pem,omitempty" toml:"pem,omitempty" yaml:"pem,omitempty" export:"true"` PEM bool `json:"pem,omitempty" toml:"pem,omitempty" yaml:"pem,omitempty" export:"true"`
@@ -690,7 +690,7 @@ func (r *Redis) SetDefaults() {
// RedirectRegex holds the redirect regex middleware configuration. // RedirectRegex holds the redirect regex middleware configuration.
// This middleware redirects a request using regex matching and replacement. // This middleware redirects a request using regex matching and replacement.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectregex/#regex // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectregex/#regex
type RedirectRegex struct { type RedirectRegex struct {
// Regex defines the regex used to match and capture elements from the request URL. // Regex defines the regex used to match and capture elements from the request URL.
Regex string `json:"regex,omitempty" toml:"regex,omitempty" yaml:"regex,omitempty"` Regex string `json:"regex,omitempty" toml:"regex,omitempty" yaml:"regex,omitempty"`
@@ -707,7 +707,7 @@ type RedirectRegex struct {
// RedirectScheme holds the redirect scheme middleware configuration. // RedirectScheme holds the redirect scheme middleware configuration.
// This middleware redirects requests from a scheme/port to another. // This middleware redirects requests from a scheme/port to another.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectscheme/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectscheme/
type RedirectScheme struct { type RedirectScheme struct {
// Scheme defines the scheme of the new URL. // Scheme defines the scheme of the new URL.
Scheme string `json:"scheme,omitempty" toml:"scheme,omitempty" yaml:"scheme,omitempty" export:"true"` Scheme string `json:"scheme,omitempty" toml:"scheme,omitempty" yaml:"scheme,omitempty" export:"true"`
@@ -726,7 +726,7 @@ type RedirectScheme struct {
// ReplacePath holds the replace path middleware configuration. // ReplacePath holds the replace path middleware configuration.
// This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header. // This middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepath/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepath/
type ReplacePath struct { type ReplacePath struct {
// Path defines the path to use as replacement in the request URL. // Path defines the path to use as replacement in the request URL.
Path string `json:"path,omitempty" toml:"path,omitempty" yaml:"path,omitempty" export:"true"` Path string `json:"path,omitempty" toml:"path,omitempty" yaml:"path,omitempty" export:"true"`
@@ -736,7 +736,7 @@ type ReplacePath struct {
// ReplacePathRegex holds the replace path regex middleware configuration. // ReplacePathRegex holds the replace path regex middleware configuration.
// This middleware replaces the path of a URL using regex matching and replacement. // This middleware replaces the path of a URL using regex matching and replacement.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepathregex/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepathregex/
type ReplacePathRegex struct { type ReplacePathRegex struct {
// Regex defines the regular expression used to match and capture the path from the request URL. // Regex defines the regular expression used to match and capture the path from the request URL.
Regex string `json:"regex,omitempty" toml:"regex,omitempty" yaml:"regex,omitempty" export:"true"` Regex string `json:"regex,omitempty" toml:"regex,omitempty" yaml:"regex,omitempty" export:"true"`
@@ -749,7 +749,7 @@ type ReplacePathRegex struct {
// Retry holds the retry middleware configuration. // Retry holds the retry middleware configuration.
// This middleware reissues requests a given number of times to a backend server if that server does not reply. // This middleware reissues requests a given number of times to a backend server if that server does not reply.
// As soon as the server answers, the middleware stops retrying, regardless of the response status. // As soon as the server answers, the middleware stops retrying, regardless of the response status.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/retry/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/retry/
type Retry struct { type Retry struct {
// Attempts defines how many times the request should be retried. // Attempts defines how many times the request should be retried.
Attempts int `json:"attempts,omitempty" toml:"attempts,omitempty" yaml:"attempts,omitempty" export:"true"` Attempts int `json:"attempts,omitempty" toml:"attempts,omitempty" yaml:"attempts,omitempty" export:"true"`
@@ -780,7 +780,7 @@ func (r *Retry) SetDefaults() {
// StripPrefix holds the strip prefix middleware configuration. // StripPrefix holds the strip prefix middleware configuration.
// This middleware removes the specified prefixes from the URL path. // This middleware removes the specified prefixes from the URL path.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefix/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefix/
type StripPrefix struct { type StripPrefix struct {
// Prefixes defines the prefixes to strip from the request URL. // Prefixes defines the prefixes to strip from the request URL.
Prefixes []string `json:"prefixes,omitempty" toml:"prefixes,omitempty" yaml:"prefixes,omitempty" export:"true"` Prefixes []string `json:"prefixes,omitempty" toml:"prefixes,omitempty" yaml:"prefixes,omitempty" export:"true"`
@@ -795,7 +795,7 @@ type StripPrefix struct {
// StripPrefixRegex holds the strip prefix regex middleware configuration. // StripPrefixRegex holds the strip prefix regex middleware configuration.
// This middleware removes the matching prefixes from the URL path. // This middleware removes the matching prefixes from the URL path.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefixregex/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefixregex/
type StripPrefixRegex struct { type StripPrefixRegex struct {
// Regex defines the regular expression to match the path prefix from the request URL. // Regex defines the regular expression to match the path prefix from the request URL.
Regex []string `json:"regex,omitempty" toml:"regex,omitempty" yaml:"regex,omitempty" export:"true"` Regex []string `json:"regex,omitempty" toml:"regex,omitempty" yaml:"regex,omitempty" export:"true"`
+1 -1
View File
@@ -162,7 +162,7 @@ type TCPServer struct {
// +k8s:deepcopy-gen=true // +k8s:deepcopy-gen=true
// ProxyProtocol holds the PROXY Protocol configuration. // ProxyProtocol holds the PROXY Protocol configuration.
// More info: https://doc.traefik.io/traefik/v3.6/routing/services/#proxy-protocol // More info: https://doc.traefik.io/traefik/v3.7/routing/services/#proxy-protocol
type ProxyProtocol struct { type ProxyProtocol struct {
// Version defines the PROXY Protocol version to use. // Version defines the PROXY Protocol version to use.
// +kubebuilder:validation:Minimum=1 // +kubebuilder:validation:Minimum=1
+2 -2
View File
@@ -15,7 +15,7 @@ type TCPMiddleware struct {
// TCPInFlightConn holds the TCP InFlightConn middleware configuration. // TCPInFlightConn holds the TCP InFlightConn middleware configuration.
// This middleware prevents services from being overwhelmed with high load, // This middleware prevents services from being overwhelmed with high load,
// by limiting the number of allowed simultaneous connections for one IP. // by limiting the number of allowed simultaneous connections for one IP.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/tcp/inflightconn/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/tcp/inflightconn/
type TCPInFlightConn struct { type TCPInFlightConn struct {
// Amount defines the maximum amount of allowed simultaneous connections. // Amount defines the maximum amount of allowed simultaneous connections.
// The middleware closes the connection if there are already amount connections opened. // The middleware closes the connection if there are already amount connections opened.
@@ -37,7 +37,7 @@ type TCPIPWhiteList struct {
// TCPIPAllowList holds the TCP IPAllowList middleware configuration. // TCPIPAllowList holds the TCP IPAllowList middleware configuration.
// This middleware limits allowed requests based on the client IP. // This middleware limits allowed requests based on the client IP.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/tcp/ipallowlist/ // More info: https://doc.traefik.io/traefik/v3.7/middlewares/tcp/ipallowlist/
type TCPIPAllowList struct { type TCPIPAllowList struct {
// SourceRange defines the allowed IPs (or ranges of allowed IPs by using CIDR notation). // SourceRange defines the allowed IPs (or ranges of allowed IPs by using CIDR notation).
SourceRange []string `json:"sourceRange,omitempty" toml:"sourceRange,omitempty" yaml:"sourceRange,omitempty"` SourceRange []string `json:"sourceRange,omitempty" toml:"sourceRange,omitempty" yaml:"sourceRange,omitempty"`
@@ -13,24 +13,24 @@ type IngressRouteSpec struct {
IngressClassName *string `json:"ingressClassName,omitempty"` IngressClassName *string `json:"ingressClassName,omitempty"`
// EntryPoints defines the list of entry point names to bind to. // EntryPoints defines the list of entry point names to bind to.
// Entry points have to be configured in the static configuration. // Entry points have to be configured in the static configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ // More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
// Default: all. // Default: all.
EntryPoints []string `json:"entryPoints,omitempty"` EntryPoints []string `json:"entryPoints,omitempty"`
// Routes defines the list of routes. // Routes defines the list of routes.
Routes []Route `json:"routes"` Routes []Route `json:"routes"`
// TLS defines the TLS configuration. // TLS defines the TLS configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/router/#tls // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/router/#tls
TLS *TLS `json:"tls,omitempty"` TLS *TLS `json:"tls,omitempty"`
// ParentRefs defines references to parent IngressRoute resources for multi-layer routing. // ParentRefs defines references to parent IngressRoute resources for multi-layer routing.
// When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers. // When set, this IngressRoute's routers will be children of the referenced parent IngressRoute's routers.
// More info: https://doc.traefik.io/traefik/v3.6/routing/routers/#parentrefs // More info: https://doc.traefik.io/traefik/v3.7/routing/routers/#parentrefs
ParentRefs []IngressRouteRef `json:"parentRefs,omitempty"` ParentRefs []IngressRouteRef `json:"parentRefs,omitempty"`
} }
// Route holds the HTTP route configuration. // Route holds the HTTP route configuration.
type Route struct { type Route struct {
// Match defines the router's rule. // Match defines the router's rule.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/
Match string `json:"match"` Match string `json:"match"`
// Kind defines the kind of the route. // Kind defines the kind of the route.
// Rule is the only supported kind. // Rule is the only supported kind.
@@ -38,11 +38,11 @@ type Route struct {
// +kubebuilder:validation:Enum=Rule // +kubebuilder:validation:Enum=Rule
Kind string `json:"kind,omitempty"` Kind string `json:"kind,omitempty"`
// Priority defines the router's priority. // Priority defines the router's priority.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#priority // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#priority
// +kubebuilder:validation:Maximum=9223372036854774807 // +kubebuilder:validation:Maximum=9223372036854774807
Priority int `json:"priority,omitempty"` Priority int `json:"priority,omitempty"`
// Syntax defines the router's rule syntax. // Syntax defines the router's rule syntax.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/rules-and-priority/#rulesyntax
// //
// Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. // Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
Syntax string `json:"syntax,omitempty"` Syntax string `json:"syntax,omitempty"`
@@ -50,51 +50,51 @@ type Route struct {
// It can contain any combination of TraefikService and/or reference to a Kubernetes Service. // It can contain any combination of TraefikService and/or reference to a Kubernetes Service.
Services []Service `json:"services,omitempty"` Services []Service `json:"services,omitempty"`
// Middlewares defines the list of references to Middleware resources. // Middlewares defines the list of references to Middleware resources.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/middleware/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/middleware/
Middlewares []MiddlewareRef `json:"middlewares,omitempty"` Middlewares []MiddlewareRef `json:"middlewares,omitempty"`
// Observability defines the observability configuration for a router. // Observability defines the observability configuration for a router.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/routing/observability/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/routing/observability/
Observability *dynamic.RouterObservabilityConfig `json:"observability,omitempty"` Observability *dynamic.RouterObservabilityConfig `json:"observability,omitempty"`
} }
// TLS holds the TLS configuration. // TLS holds the TLS configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/overview/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/overview/
type TLS struct { type TLS struct {
// SecretName is the name of the referenced Kubernetes Secret to specify the certificate details. // SecretName is the name of the referenced Kubernetes Secret to specify the certificate details.
SecretName string `json:"secretName,omitempty"` SecretName string `json:"secretName,omitempty"`
// Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. // Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
// If not defined, the `default` TLSOption is used. // If not defined, the `default` TLSOption is used.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-options/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-options/
Options *TLSOptionRef `json:"options,omitempty"` Options *TLSOptionRef `json:"options,omitempty"`
// Store defines the reference to the TLSStore, that will be used to store certificates. // Store defines the reference to the TLSStore, that will be used to store certificates.
// Please note that only `default` TLSStore can be used. // Please note that only `default` TLSStore can be used.
Store *TLSStoreRef `json:"store,omitempty"` Store *TLSStoreRef `json:"store,omitempty"`
// CertResolver defines the name of the certificate resolver to use. // CertResolver defines the name of the certificate resolver to use.
// Cert resolvers have to be configured in the static configuration. // Cert resolvers have to be configured in the static configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ // More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
CertResolver string `json:"certResolver,omitempty"` CertResolver string `json:"certResolver,omitempty"`
// Domains defines the list of domains that will be used to issue certificates. // Domains defines the list of domains that will be used to issue certificates.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#domains // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#domains
Domains []types.Domain `json:"domains,omitempty"` Domains []types.Domain `json:"domains,omitempty"`
} }
// TLSOptionRef is a reference to a TLSOption resource. // TLSOptionRef is a reference to a TLSOption resource.
type TLSOptionRef struct { type TLSOptionRef struct {
// Name defines the name of the referenced TLSOption. // Name defines the name of the referenced TLSOption.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
Name string `json:"name"` Name string `json:"name"`
// Namespace defines the namespace of the referenced TLSOption. // Namespace defines the namespace of the referenced TLSOption.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsoption/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsoption/
Namespace string `json:"namespace,omitempty"` Namespace string `json:"namespace,omitempty"`
} }
// TLSStoreRef is a reference to a TLSStore resource. // TLSStoreRef is a reference to a TLSStore resource.
type TLSStoreRef struct { type TLSStoreRef struct {
// Name defines the name of the referenced TLSStore. // Name defines the name of the referenced TLSStore.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
Name string `json:"name"` Name string `json:"name"`
// Namespace defines the namespace of the referenced TLSStore. // Namespace defines the namespace of the referenced TLSStore.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/tlsstore/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/tlsstore/
Namespace string `json:"namespace,omitempty"` Namespace string `json:"namespace,omitempty"`
} }
@@ -113,7 +113,7 @@ type LoadBalancerSpec struct {
// Middlewares defines the list of references to Middleware resources to apply to the service. // Middlewares defines the list of references to Middleware resources to apply to the service.
Middlewares []MiddlewareRef `json:"middlewares,omitempty"` Middlewares []MiddlewareRef `json:"middlewares,omitempty"`
// Sticky defines the sticky sessions configuration. // Sticky defines the sticky sessions configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions
Sticky *dynamic.Sticky `json:"sticky,omitempty"` Sticky *dynamic.Sticky `json:"sticky,omitempty"`
// Port defines the port of a Kubernetes Service. // Port defines the port of a Kubernetes Service.
// This can be a reference to a named port. // This can be a reference to a named port.
@@ -13,27 +13,27 @@ type IngressRouteTCPSpec struct {
IngressClassName *string `json:"ingressClassName,omitempty"` IngressClassName *string `json:"ingressClassName,omitempty"`
// EntryPoints defines the list of entry point names to bind to. // EntryPoints defines the list of entry point names to bind to.
// Entry points have to be configured in the static configuration. // Entry points have to be configured in the static configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ // More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
// Default: all. // Default: all.
EntryPoints []string `json:"entryPoints,omitempty"` EntryPoints []string `json:"entryPoints,omitempty"`
// Routes defines the list of routes. // Routes defines the list of routes.
Routes []RouteTCP `json:"routes"` Routes []RouteTCP `json:"routes"`
// TLS defines the TLS configuration on a layer 4 / TCP Route. // TLS defines the TLS configuration on a layer 4 / TCP Route.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/router/#tls // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/router/#tls
TLS *TLSTCP `json:"tls,omitempty"` TLS *TLSTCP `json:"tls,omitempty"`
} }
// RouteTCP holds the TCP route configuration. // RouteTCP holds the TCP route configuration.
type RouteTCP struct { type RouteTCP struct {
// Match defines the router's rule. // Match defines the router's rule.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/
Match string `json:"match"` Match string `json:"match"`
// Priority defines the router's priority. // Priority defines the router's priority.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#priority // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#priority
// +kubebuilder:validation:Maximum=9223372036854774807 // +kubebuilder:validation:Maximum=9223372036854774807
Priority int `json:"priority,omitempty"` Priority int `json:"priority,omitempty"`
// Syntax defines the router's rule syntax. // Syntax defines the router's rule syntax.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/routing/rules-and-priority/#rulesyntax
// +kubebuilder:validation:Enum=v3;v2 // +kubebuilder:validation:Enum=v3;v2
// //
// Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax. // Deprecated: Please do not use this field and rewrite the router rules to use the v3 syntax.
@@ -45,7 +45,7 @@ type RouteTCP struct {
} }
// TLSTCP holds the TLS configuration for an IngressRouteTCP. // TLSTCP holds the TLS configuration for an IngressRouteTCP.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/
type TLSTCP struct { type TLSTCP struct {
// SecretName is the name of the referenced Kubernetes Secret to specify the certificate details. // SecretName is the name of the referenced Kubernetes Secret to specify the certificate details.
SecretName string `json:"secretName,omitempty"` SecretName string `json:"secretName,omitempty"`
@@ -53,17 +53,17 @@ type TLSTCP struct {
Passthrough bool `json:"passthrough,omitempty"` Passthrough bool `json:"passthrough,omitempty"`
// Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection. // Options defines the reference to a TLSOption, that specifies the parameters of the TLS connection.
// If not defined, the `default` TLSOption is used. // If not defined, the `default` TLSOption is used.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#tls-options // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#tls-options
Options *ObjectReference `json:"options,omitempty"` Options *ObjectReference `json:"options,omitempty"`
// Store defines the reference to the TLSStore, that will be used to store certificates. // Store defines the reference to the TLSStore, that will be used to store certificates.
// Please note that only `default` TLSStore can be used. // Please note that only `default` TLSStore can be used.
Store *ObjectReference `json:"store,omitempty"` Store *ObjectReference `json:"store,omitempty"`
// CertResolver defines the name of the certificate resolver to use. // CertResolver defines the name of the certificate resolver to use.
// Cert resolvers have to be configured in the static configuration. // Cert resolvers have to be configured in the static configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/tls/certificate-resolvers/acme/ // More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/tls/certificate-resolvers/acme/
CertResolver string `json:"certResolver,omitempty"` CertResolver string `json:"certResolver,omitempty"`
// Domains defines the list of domains that will be used to issue certificates. // Domains defines the list of domains that will be used to issue certificates.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/tls/#domains // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/tls/#domains
Domains []types.Domain `json:"domains,omitempty"` Domains []types.Domain `json:"domains,omitempty"`
} }
@@ -89,7 +89,7 @@ type ServiceTCP struct {
// Deprecated: TerminationDelay will not be supported in future APIVersions, please use ServersTransport to configure the TerminationDelay instead. // Deprecated: TerminationDelay will not be supported in future APIVersions, please use ServersTransport to configure the TerminationDelay instead.
TerminationDelay *int `json:"terminationDelay,omitempty"` TerminationDelay *int `json:"terminationDelay,omitempty"`
// ProxyProtocol defines the PROXY protocol configuration. // ProxyProtocol defines the PROXY protocol configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/service/#proxy-protocol // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/service/#proxy-protocol
// //
// Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead. // Deprecated: ProxyProtocol will not be supported in future APIVersions, please use ServersTransport to configure ProxyProtocol instead.
ProxyProtocol *dynamic.ProxyProtocol `json:"proxyProtocol,omitempty"` ProxyProtocol *dynamic.ProxyProtocol `json:"proxyProtocol,omitempty"`
@@ -11,7 +11,7 @@ type IngressRouteUDPSpec struct {
IngressClassName *string `json:"ingressClassName,omitempty"` IngressClassName *string `json:"ingressClassName,omitempty"`
// EntryPoints defines the list of entry point names to bind to. // EntryPoints defines the list of entry point names to bind to.
// Entry points have to be configured in the static configuration. // Entry points have to be configured in the static configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/install-configuration/entrypoints/ // More info: https://doc.traefik.io/traefik/v3.7/reference/install-configuration/entrypoints/
// Default: all. // Default: all.
EntryPoints []string `json:"entryPoints,omitempty"` EntryPoints []string `json:"entryPoints,omitempty"`
// Routes defines the list of routes. // Routes defines the list of routes.
@@ -12,7 +12,7 @@ import (
// +kubebuilder:storageversion // +kubebuilder:storageversion
// Middleware is the CRD implementation of a Traefik Middleware. // Middleware is the CRD implementation of a Traefik Middleware.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/
type Middleware struct { type Middleware struct {
metav1.TypeMeta `json:",inline"` metav1.TypeMeta `json:",inline"`
// Standard object's metadata. // Standard object's metadata.
@@ -53,7 +53,7 @@ type MiddlewareSpec struct {
ContentType *dynamic.ContentType `json:"contentType,omitempty"` ContentType *dynamic.ContentType `json:"contentType,omitempty"`
GrpcWeb *dynamic.GrpcWeb `json:"grpcWeb,omitempty"` GrpcWeb *dynamic.GrpcWeb `json:"grpcWeb,omitempty"`
// Plugin defines the middleware plugin configuration. // Plugin defines the middleware plugin configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/#community-middlewares // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/#community-middlewares
Plugin map[string]apiextensionv1.JSON `json:"plugin,omitempty"` Plugin map[string]apiextensionv1.JSON `json:"plugin,omitempty"`
} }
@@ -61,7 +61,7 @@ type MiddlewareSpec struct {
// Buffering holds the buffering middleware configuration. // Buffering holds the buffering middleware configuration.
// This middleware retries or limits the size of requests that can be forwarded to backends. // This middleware retries or limits the size of requests that can be forwarded to backends.
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#maxrequestbodybytes // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#maxrequestbodybytes
type Buffering struct { type Buffering struct {
// MaxRequestBodyBytes defines the maximum allowed body size for the request (in bytes). // MaxRequestBodyBytes defines the maximum allowed body size for the request (in bytes).
// If the request exceeds the allowed size, it is not forwarded to the service, and the client gets a 413 (Request Entity Too Large) response. // If the request exceeds the allowed size, it is not forwarded to the service, and the client gets a 413 (Request Entity Too Large) response.
@@ -79,7 +79,7 @@ type Buffering struct {
MemResponseBodyBytes int64 `json:"memResponseBodyBytes,omitempty" toml:"memResponseBodyBytes,omitempty" yaml:"memResponseBodyBytes,omitempty" export:"true"` MemResponseBodyBytes int64 `json:"memResponseBodyBytes,omitempty" toml:"memResponseBodyBytes,omitempty" yaml:"memResponseBodyBytes,omitempty" export:"true"`
// RetryExpression defines the retry conditions. // RetryExpression defines the retry conditions.
// It is a logical combination of functions with operators AND (&&) and OR (||). // It is a logical combination of functions with operators AND (&&) and OR (||).
// More info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#retryexpression // More info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#retryexpression
RetryExpression string `json:"retryExpression,omitempty" toml:"retryExpression,omitempty" yaml:"retryExpression,omitempty" export:"true"` RetryExpression string `json:"retryExpression,omitempty" toml:"retryExpression,omitempty" yaml:"retryExpression,omitempty" export:"true"`
} }
@@ -87,7 +87,7 @@ type Buffering struct {
// ErrorPage holds the custom error middleware configuration. // ErrorPage holds the custom error middleware configuration.
// This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes. // This middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/
type ErrorPage struct { type ErrorPage struct {
// Status defines which status or range of statuses should result in an error page. // Status defines which status or range of statuses should result in an error page.
// It can be either a status code as a number (500), // It can be either a status code as a number (500),
@@ -100,7 +100,7 @@ type ErrorPage struct {
// For example: "418": 404 or "410-418": 404 // For example: "418": 404 or "410-418": 404
StatusRewrites map[string]int `json:"statusRewrites,omitempty"` StatusRewrites map[string]int `json:"statusRewrites,omitempty"`
// Service defines the reference to a Kubernetes Service that will serve the error page. // Service defines the reference to a Kubernetes Service that will serve the error page.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/#service // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/#service
Service Service `json:"service,omitempty"` Service Service `json:"service,omitempty"`
// Query defines the URL for the error page (hosted by service). // Query defines the URL for the error page (hosted by service).
// The {status} variable can be used in order to insert the status code in the URL. // The {status} variable can be used in order to insert the status code in the URL.
@@ -135,7 +135,7 @@ type CircuitBreaker struct {
// Chain holds the configuration of the chain middleware. // Chain holds the configuration of the chain middleware.
// This middleware enables to define reusable combinations of other pieces of middleware. // This middleware enables to define reusable combinations of other pieces of middleware.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/chain/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/chain/
type Chain struct { type Chain struct {
// Middlewares is the list of MiddlewareRef which composes the chain. // Middlewares is the list of MiddlewareRef which composes the chain.
Middlewares []MiddlewareRef `json:"middlewares,omitempty"` Middlewares []MiddlewareRef `json:"middlewares,omitempty"`
@@ -145,7 +145,7 @@ type Chain struct {
// BasicAuth holds the basic auth middleware configuration. // BasicAuth holds the basic auth middleware configuration.
// This middleware restricts access to your services to known users. // This middleware restricts access to your services to known users.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/
type BasicAuth struct { type BasicAuth struct {
// Secret is the name of the referenced Kubernetes Secret containing user credentials. // Secret is the name of the referenced Kubernetes Secret containing user credentials.
Secret string `json:"secret,omitempty"` Secret string `json:"secret,omitempty"`
@@ -156,7 +156,7 @@ type BasicAuth struct {
// Default: false. // Default: false.
RemoveHeader bool `json:"removeHeader,omitempty"` RemoveHeader bool `json:"removeHeader,omitempty"`
// HeaderField defines a header field to store the authenticated user. // HeaderField defines a header field to store the authenticated user.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/#headerfield // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/#headerfield
HeaderField string `json:"headerField,omitempty"` HeaderField string `json:"headerField,omitempty"`
} }
@@ -164,7 +164,7 @@ type BasicAuth struct {
// DigestAuth holds the digest auth middleware configuration. // DigestAuth holds the digest auth middleware configuration.
// This middleware restricts access to your services to known users. // This middleware restricts access to your services to known users.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/
type DigestAuth struct { type DigestAuth struct {
// Secret is the name of the referenced Kubernetes Secret containing user credentials. // Secret is the name of the referenced Kubernetes Secret containing user credentials.
Secret string `json:"secret,omitempty"` Secret string `json:"secret,omitempty"`
@@ -174,7 +174,7 @@ type DigestAuth struct {
// Default: traefik. // Default: traefik.
Realm string `json:"realm,omitempty"` Realm string `json:"realm,omitempty"`
// HeaderField defines a header field to store the authenticated user. // HeaderField defines a header field to store the authenticated user.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/#headerfield // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/#headerfield
HeaderField string `json:"headerField,omitempty"` HeaderField string `json:"headerField,omitempty"`
} }
@@ -182,7 +182,7 @@ type DigestAuth struct {
// ForwardAuth holds the forward auth middleware configuration. // ForwardAuth holds the forward auth middleware configuration.
// This middleware delegates the request authentication to a Service. // This middleware delegates the request authentication to a Service.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/
type ForwardAuth struct { type ForwardAuth struct {
// Address defines the authentication server address. // Address defines the authentication server address.
Address string `json:"address,omitempty"` Address string `json:"address,omitempty"`
@@ -191,7 +191,7 @@ type ForwardAuth struct {
// AuthResponseHeaders defines the list of headers to copy from the authentication server response and set on forwarded request, replacing any existing conflicting headers. // AuthResponseHeaders defines the list of headers to copy from the authentication server response and set on forwarded request, replacing any existing conflicting headers.
AuthResponseHeaders []string `json:"authResponseHeaders,omitempty"` AuthResponseHeaders []string `json:"authResponseHeaders,omitempty"`
// AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex. // AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex
AuthResponseHeadersRegex string `json:"authResponseHeadersRegex,omitempty"` AuthResponseHeadersRegex string `json:"authResponseHeadersRegex,omitempty"`
// AuthRequestHeaders defines the list of the headers to copy from the request to the authentication server. // AuthRequestHeaders defines the list of the headers to copy from the request to the authentication server.
// If not set or empty then all request headers are passed. // If not set or empty then all request headers are passed.
@@ -203,7 +203,7 @@ type ForwardAuth struct {
// AddAuthCookiesToResponse defines the list of cookies to copy from the authentication server response to the response. // AddAuthCookiesToResponse defines the list of cookies to copy from the authentication server response to the response.
AddAuthCookiesToResponse []string `json:"addAuthCookiesToResponse,omitempty"` AddAuthCookiesToResponse []string `json:"addAuthCookiesToResponse,omitempty"`
// HeaderField defines a header field to store the authenticated user. // HeaderField defines a header field to store the authenticated user.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#headerfield // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#headerfield
HeaderField string `json:"headerField,omitempty"` HeaderField string `json:"headerField,omitempty"`
// ForwardBody defines whether to send the request body to the authentication server. // ForwardBody defines whether to send the request body to the authentication server.
ForwardBody bool `json:"forwardBody,omitempty"` ForwardBody bool `json:"forwardBody,omitempty"`
@@ -232,7 +232,7 @@ type ClientTLSWithCAOptional struct {
// RateLimit holds the rate limit configuration. // RateLimit holds the rate limit configuration.
// This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is. // This middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/ratelimit/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/ratelimit/
type RateLimit struct { type RateLimit struct {
// Average is the maximum rate, by default in requests/s, allowed for the given source. // Average is the maximum rate, by default in requests/s, allowed for the given source.
// It defaults to 0, which means no rate limiting. // It defaults to 0, which means no rate limiting.
@@ -317,7 +317,7 @@ type ClientTLS struct {
// Compress holds the compress middleware configuration. // Compress holds the compress middleware configuration.
// This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression. // This middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/compress/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/compress/
type Compress struct { type Compress struct {
// ExcludedContentTypes defines the list of content types to compare the Content-Type header of the incoming requests and responses before compressing. // ExcludedContentTypes defines the list of content types to compare the Content-Type header of the incoming requests and responses before compressing.
// `application/grpc` is always excluded. // `application/grpc` is always excluded.
@@ -339,7 +339,7 @@ type Compress struct {
// Retry holds the retry middleware configuration. // Retry holds the retry middleware configuration.
// This middleware reissues requests a given number of times to a backend server if that server does not reply. // This middleware reissues requests a given number of times to a backend server if that server does not reply.
// As soon as the server answers, the middleware stops retrying, regardless of the response status. // As soon as the server answers, the middleware stops retrying, regardless of the response status.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/retry/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/retry/
type Retry struct { type Retry struct {
// Attempts defines how many times the request should be retried. // Attempts defines how many times the request should be retried.
// +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Minimum=0
@@ -9,7 +9,7 @@ import (
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// MiddlewareTCP is the CRD implementation of a Traefik TCP middleware. // MiddlewareTCP is the CRD implementation of a Traefik TCP middleware.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/overview/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/overview/
type MiddlewareTCP struct { type MiddlewareTCP struct {
metav1.TypeMeta `json:",inline"` metav1.TypeMeta `json:",inline"`
// Standard object's metadata. // Standard object's metadata.
@@ -27,13 +27,13 @@ type MiddlewareTCPSpec struct {
InFlightConn *dynamic.TCPInFlightConn `json:"inFlightConn,omitempty"` InFlightConn *dynamic.TCPInFlightConn `json:"inFlightConn,omitempty"`
// IPWhiteList defines the IPWhiteList middleware configuration. // IPWhiteList defines the IPWhiteList middleware configuration.
// This middleware accepts/refuses connections based on the client IP. // This middleware accepts/refuses connections based on the client IP.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipwhitelist/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipwhitelist/
// //
// Deprecated: please use IPAllowList instead. // Deprecated: please use IPAllowList instead.
IPWhiteList *dynamic.TCPIPWhiteList `json:"ipWhiteList,omitempty"` IPWhiteList *dynamic.TCPIPWhiteList `json:"ipWhiteList,omitempty"`
// IPAllowList defines the IPAllowList middleware configuration. // IPAllowList defines the IPAllowList middleware configuration.
// This middleware accepts/refuses connections based on the client IP. // This middleware accepts/refuses connections based on the client IP.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/middlewares/ipallowlist/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/middlewares/ipallowlist/
IPAllowList *dynamic.TCPIPAllowList `json:"ipAllowList,omitempty"` IPAllowList *dynamic.TCPIPAllowList `json:"ipAllowList,omitempty"`
} }
@@ -13,7 +13,7 @@ import (
// ServersTransport is the CRD implementation of a ServersTransport. // ServersTransport is the CRD implementation of a ServersTransport.
// If no serversTransport is specified, the default@internal will be used. // If no serversTransport is specified, the default@internal will be used.
// The default@internal serversTransport is created from the static configuration. // The default@internal serversTransport is created from the static configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/serverstransport/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/serverstransport/
type ServersTransport struct { type ServersTransport struct {
metav1.TypeMeta `json:",inline"` metav1.TypeMeta `json:",inline"`
// Standard object's metadata. // Standard object's metadata.
@@ -13,7 +13,7 @@ import (
// ServersTransportTCP is the CRD implementation of a TCPServersTransport. // ServersTransportTCP is the CRD implementation of a TCPServersTransport.
// If no tcpServersTransport is specified, a default one named default@internal will be used. // If no tcpServersTransport is specified, a default one named default@internal will be used.
// The default@internal tcpServersTransport can be configured in the static configuration. // The default@internal tcpServersTransport can be configured in the static configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/tcp/serverstransport/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/tcp/serverstransport/
type ServersTransportTCP struct { type ServersTransportTCP struct {
metav1.TypeMeta `json:",inline"` metav1.TypeMeta `json:",inline"`
// Standard object's metadata. // Standard object's metadata.
@@ -13,7 +13,7 @@ import (
// TraefikService object allows to: // TraefikService object allows to:
// - Apply weight to Services on load-balancing // - Apply weight to Services on load-balancing
// - Mirror traffic on services // - Mirror traffic on services
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/ // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/
type TraefikService struct { type TraefikService struct {
metav1.TypeMeta `json:",inline"` metav1.TypeMeta `json:",inline"`
// Standard object's metadata. // Standard object's metadata.
@@ -53,7 +53,7 @@ type TraefikServiceSpec struct {
// +k8s:deepcopy-gen=true // +k8s:deepcopy-gen=true
// Mirroring holds the mirroring service configuration. // Mirroring holds the mirroring service configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#mirroring // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#mirroring
type Mirroring struct { type Mirroring struct {
LoadBalancerSpec `json:",inline"` LoadBalancerSpec `json:",inline"`
@@ -82,19 +82,19 @@ type MirrorService struct {
// +k8s:deepcopy-gen=true // +k8s:deepcopy-gen=true
// WeightedRoundRobin holds the weighted round-robin configuration. // WeightedRoundRobin holds the weighted round-robin configuration.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#weighted-round-robin-wrr // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#weighted-round-robin-wrr
type WeightedRoundRobin struct { type WeightedRoundRobin struct {
// Services defines the list of Kubernetes Service and/or TraefikService to load-balance, with weight. // Services defines the list of Kubernetes Service and/or TraefikService to load-balance, with weight.
Services []Service `json:"services,omitempty"` Services []Service `json:"services,omitempty"`
// Sticky defines whether sticky sessions are enabled. // Sticky defines whether sticky sessions are enabled.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/kubernetes/crd/http/traefikservice/#stickiness-and-load-balancing
Sticky *dynamic.Sticky `json:"sticky,omitempty"` Sticky *dynamic.Sticky `json:"sticky,omitempty"`
} }
// +k8s:deepcopy-gen=true // +k8s:deepcopy-gen=true
// HighestRandomWeight holds the highest random weight configuration. // HighestRandomWeight holds the highest random weight configuration.
// More info: https://doc.traefik.io/traefik/v3.6/routing/services/#highest-random-configuration // More info: https://doc.traefik.io/traefik/v3.7/routing/services/#highest-random-configuration
type HighestRandomWeight struct { type HighestRandomWeight struct {
// Services defines the list of Kubernetes Service and/or TraefikService to load-balance, with weight. // Services defines the list of Kubernetes Service and/or TraefikService to load-balance, with weight.
Services []Service `json:"services,omitempty"` Services []Service `json:"services,omitempty"`
@@ -9,7 +9,7 @@ import (
// +kubebuilder:storageversion // +kubebuilder:storageversion
// TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection. // TLSOption is the CRD implementation of a Traefik TLS Option, allowing to configure some parameters of the TLS connection.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#tls-options
type TLSOption struct { type TLSOption struct {
metav1.TypeMeta `json:",inline"` metav1.TypeMeta `json:",inline"`
// Standard object's metadata. // Standard object's metadata.
@@ -32,17 +32,17 @@ type TLSOptionSpec struct {
// Default: None. // Default: None.
MaxVersion string `json:"maxVersion,omitempty"` MaxVersion string `json:"maxVersion,omitempty"`
// CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2. // CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#cipher-suites
CipherSuites []string `json:"cipherSuites,omitempty"` CipherSuites []string `json:"cipherSuites,omitempty"`
// CurvePreferences defines the preferred elliptic curves. // CurvePreferences defines the preferred elliptic curves.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#curve-preferences
CurvePreferences []string `json:"curvePreferences,omitempty"` CurvePreferences []string `json:"curvePreferences,omitempty"`
// ClientAuth defines the server's policy for TLS Client Authentication. // ClientAuth defines the server's policy for TLS Client Authentication.
ClientAuth ClientAuth `json:"clientAuth,omitempty"` ClientAuth ClientAuth `json:"clientAuth,omitempty"`
// SniStrict defines whether Traefik allows connections from clients connections that do not specify a server_name extension. // SniStrict defines whether Traefik allows connections from clients connections that do not specify a server_name extension.
SniStrict bool `json:"sniStrict,omitempty"` SniStrict bool `json:"sniStrict,omitempty"`
// ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference. // ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#alpn-protocols
ALPNProtocols []string `json:"alpnProtocols,omitempty"` ALPNProtocols []string `json:"alpnProtocols,omitempty"`
// DisableSessionTickets disables TLS session resumption via session tickets. // DisableSessionTickets disables TLS session resumption via session tickets.
DisableSessionTickets bool `json:"disableSessionTickets,omitempty"` DisableSessionTickets bool `json:"disableSessionTickets,omitempty"`
@@ -12,7 +12,7 @@ import (
// TLSStore is the CRD implementation of a Traefik TLS Store. // TLSStore is the CRD implementation of a Traefik TLS Store.
// For the time being, only the TLSStore named default is supported. // For the time being, only the TLSStore named default is supported.
// This means that you cannot have two stores that are named default in different Kubernetes namespaces. // This means that you cannot have two stores that are named default in different Kubernetes namespaces.
// More info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores // More info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores
type TLSStore struct { type TLSStore struct {
metav1.TypeMeta `json:",inline"` metav1.TypeMeta `json:",inline"`
// Standard object's metadata. // Standard object's metadata.
+3 -3
View File
@@ -4,11 +4,11 @@ RepositoryName = "traefik"
OutputType = "file" OutputType = "file"
FileName = "traefik_changelog.md" FileName = "traefik_changelog.md"
# example RC1 of v3.6.0-rc1 # example RC1 of v3.7.0-ea.1
CurrentRef = "master" CurrentRef = "master"
PreviousRef = "v3.5.0-rc1" PreviousRef = "v3.6.0-rc1"
BaseBranch = "master" BaseBranch = "master"
FutureCurrentRefName = "v3.6.0-rc1" FutureCurrentRefName = "v3.7.0-ea.1"
ThresholdPreviousRef = 10 ThresholdPreviousRef = 10
ThresholdCurrentRef = 10 ThresholdCurrentRef = 10