# Traefik v2.11 Proposal

**URL:** <https://community.traefik.io/t/traefik-v2-11-proposal/20418>\
**Category:** Traefik v2\
**Created:** [November 9, 2023, 9:26am UTC](https://community.traefik.io/t/traefik-v2-11-proposal/20418 "2023-11-09T09:26:56Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![nicomengin](https://sea2.discourse-cdn.com/flex020/user_avatar/community.traefik.io/nicomengin/32/5507_2.png) [@nicomengin](https://community.traefik.io/u/nicomengin)\
**Post date:** [November 9, 2023, 9:26am UTC](https://community.traefik.io/t/traefik-v2-11-proposal/20418/1 "2023-11-09T09:26:57Z")

</div>

Hello,

With some other Traefik maintainers, we're gearing up for a potential release of Traefik v2.11 and we wanted to loop you in on the action.

You can find more information in the dedicated [Github proposal](https://github.com/traefik/traefik/issues/10192).

Don't hesitate to join the discussion.

---

<div class="post-metadata">

**Author:** ![bluepuma77](https://avatars.discourse-cdn.com/v4/letter/b/a9adbd/32.png) [@bluepuma77](https://community.traefik.io/u/bluepuma77)\
**Post date:** [November 9, 2023, 12:55pm UTC](https://community.traefik.io/t/traefik-v2-11-proposal/20418/2 "2023-11-09T12:55:08Z")

</div>

Thanks for the effort. So you want us to name the bugs and features that are close to our heart, which we would like to get delivered with v2.11?

I got some 🙂

> <https://github.com/traefik/traefik/issues/9294>
>
> \### Welcome!
> 
> \- \[X\] Yes, I've searched similar issues on \[GitHub\](https://github….com/traefik/traefik/issues) and didn't find any.
> \- \[X\] Yes, I've searched similar issues on the \[Traefik community forum\](https://community.traefik.io) and didn't find any.
> 
> \### What did you expect to see?
> 
> We run multiple Traefik instances behind a load balancer using ProxyProtocol. 
> \`\`\`
> entryPoints:
> web:
> address: :80
> proxyProtocol:
> insecure: true
> http:
> redirections:
> entryPoint:
> to: websecure
> scheme: https
> websecure:
> address: :443
> proxyProtocol:
> trustedIPs:
> - 1.2.3.4
> - 5.6.7.8
> \`\`\`
> It would be great if Traefik could add the IP of the ProxyProtocol host to the HTTP headers, so our app can see which load balancer was used for the request.
> \`\`\`
> Hostname: myhost
> IP: 127.0.0.1
> IP: 10.0.16.28
> IP: 172.19.0.5
> RemoteAddr: 10.0.16.26:42274
> GET / HTTP/1.1
> Host: myhost.example.com
> User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:103.0) Gecko/20100101 Firefox/103.0
> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,\*/\*;q=0.8
> Accept-Encoding: gzip, deflate, br
> Upgrade-Insecure-Requests: 1
> X-Forwarded-For: 67.78.89.90
> X-Forwarded-Host: myhost.example.com
> X-Forwarded-Port: 443
> X-Forwarded-Proto: https
> X-Forwarded-Server: myhost
> X-Forwarded-Proxy: 1.2.3.4 \<====================
> X-Real-Ip: 67.78.89.90
> \`\`\`

> <https://github.com/traefik/traefik/issues/9378>
>
> \### Welcome!
> 
> \- \[X\] Yes, I've searched similar issues on \[GitHub\](https://github….com/traefik/traefik/issues) and didn't find any.
> \- \[X\] Yes, I've searched similar issues on the \[Traefik community forum\](https://community.traefik.io) and didn't find any.
> 
> \### What did you expect to see?
> 
> It would be great to have \`trustedIPs\` as dynamic config, so when we add a load balancer we don't need to restart Traefik, but we can just update a dynamic configuration file for "zero downtime deployments".
> 
> From the \[Traefik EntryPoints docs\](https://doc.traefik.io/traefik/routing/entrypoints/#proxyprotocol):
> 
> \`\`\`
> \## Static configuration
> entryPoints:
> web:
> address: ":80"
> proxyProtocol:
> trustedIPs:
> - "127.0.0.1/32"
> - "192.168.1.7" 
> \`\`\`

> <https://github.com/traefik/traefik/issues/9611>
>
> \### Welcome!
> 
> \- \[X\] Yes, I've searched similar issues on \[GitHub\](https://github….com/traefik/traefik/issues) and didn't find any.
> \- \[X\] Yes, I've searched similar issues on the \[Traefik community forum\](https://community.traefik.io) and didn't find any.
> 
> \### What did you expect to see?
> 
> In our world of IT, security gets more and more important, even within networks. Services are compartmentalised, connections within are encrypted. Traefik can support this with loadbalancing to targets with custom TLS using \[insecureskipverify\](https://doc.traefik.io/traefik/routing/services/#insecureskipverify). 
> 
> The current challenge is that \`insecureskipverify\` can not just be enabled for a loadbalancer via Docker container labels, but it needs to be defined within a \`servertransport\`, which then needs to be assigned. But the \`servertransport\` can not be created within labels, but it needs to come via \`provider.file\`, meaning you have an extra file to take care of and can not just use a single \`docker-compose.yml\`. Or you define a global \`servertransport\`, but then you can not verify any internal TLS.
> 
> This feature request calls for enabling \`servertransport\` and \`insecureskipverify\` on Docker labels to make use easier, make our IT world a bit more secure and reduce the support requests in the Traffic community. 
> 
> Example how it should work:
> \`\`\`
> version: '3.9'
> 
> services:
> portainer:
> image: portainer/portainer-ce:2.16.2
> volumes:
> - /etc/localtime:/etc/localtime:ro
> - portainer\_data:/data
> networks:
> - proxy
> - agent\_network
> labels:
> - traefik.enable=true
> - traefik.http.routers.portainer.rule=Host(\`portainer.example.com\`)
> - traefik.http.routers.portainer.tls.certresolver=myresolver
> - traefik.http.services.portainer.loadbalancer.passhostheader=true
> - traefik.http.services.portainer.loadbalancer.server.port=9443
> - traefik.http.services.portainer.loadbalancer.serverstransport=mytransport
> - traefik.http.serverstransports.mytransport.insecureskipverify=true
> 
> \`\`\`
> 
> Some Traefik community references: \[1\](https://community.traefik.io/t/insecureskipverify-how-to-apply-this-at-a-service-level-in-docker-compose/16155/4), \[2\](https://community.traefik.io/t/traefik-portainer-bad-certificate/16799/14), \[3\](https://community.traefik.io/t/servers-transport-not-found/11513), \[4\](https://community.traefik.io/t/insecureskipverify-true/11316/3)

> <https://github.com/traefik/traefik/issues/9952>
>
> \### Welcome!
> 
> \- \[X\] Yes, I've searched similar issues on \[GitHub\](https://gith…ub.com/traefik/traefik/issues) and didn't find any.
> \- \[X\] Yes, I've searched similar issues on the \[Traefik community forum\](https://community.traefik.io) and didn't find any.
> 
> \### What did you expect to see?
> 
> \[Traefik ForwardAuth documentation\](https://doc.traefik.io/traefik/middlewares/http/forwardauth/) is IMHO missing some information bits:
> 
> 1. Will original request be forwarded with the same HTTP method or will they all be "converted" to GET?
> 
> 2. If POSTs are forwarded as POSTs, how can the BODY be disabled? Nginx has \`proxy\_pass\_request\_body off;\`

> <https://github.com/traefik/traefik/issues/8753>
>
> Hi i would love to have this possibility
> Configure traefik via label providers:… allow setting the \`traefik.http.services.\<service-name\>.loadBalancer.server.url\`
> 
> for example in docker:
> \`\`\`yaml
> version: "3.7"
> services:
> rp:
> labels:
> traefik.http.routers.proxy.entryPoints: web
> traefik.http.routers.proxy.service: proxy-crt
> traefik.http.routers.proxy.rule: PathPrefix(\`/proxy-crt\`)
> traefik.http.routers.proxy.middlewares: strip-crt, cors-crt
> 
> traefik.http.services.proxy.loadBalancer.server.url: ${A\_URL\_AS\_VARIABLE}
> 
> traefik.http.middlewares.strip.stripPrefix.prefixes: /proxy-crt
> 
> traefik.http.middlewares.cors.headers.accessControlAllowMethods: GET,OPTIONS
> traefik.http.middlewares.cors.headers.accessControlAllowOriginlist: "\*"
> traefik.http.middlewares.cors.headers.accessControlMaxAge: 86400
> 
> \`\`\`
> 
> I have seen this question:
> https://community.traefik.io/t/traefik-v2-with-docker-compose-external-services-possible/5792/2
> 
> I know that setting this exact configuration is possible with the file provider but as far as i know not with a variable.
> 
> \`\`\`yaml
> http:
> routers:
> proxy:
> entryPoints:
> - web
> middlewares:
> - strip
> - cors
> service: proxy
> rule: PathPrefix(\`/proxy\`)
> 
> services:
> proxy:
> loadBalancer:
> passHostHeader: false
> servers:
> - url: https://example.com # NOT CONTROLLABLE VIA VARIABLE
> 
> middlewares:
> strip:
> stripPrefix:
> prefixes:
> - /proxy
> cors:
> headers:
> accessControlAllowMethods: GET,OPTIONS
> accessControlAllowOriginlist: "\*"
> accessControlMaxAge: 86400
> 
> 
> \`\`\`
> 
> A similar thing is possible with domain certs:
> \`\`\`yaml
> traefik.http.routers.myrouter.tls.domains\[0\].main: example.org
> \`\`\`
> could then look like this:
> \`\`\`yaml
> traefik.http.services.proxy.loadBalancer.servers\[0\].url: ${A\_URL\_AS\_VARIABLE}
> \`\`\`

In general it’s really annoying for new users to understand first static and dynamic config, and then learn that not all dynamic configs are created equal, as docker labels are missing some of the dynamic file functionality. But that’s probably for v3 or v4.

---

<div class="post-metadata">

**Author:** ![nicomengin](https://sea2.discourse-cdn.com/flex020/user_avatar/community.traefik.io/nicomengin/32/5507_2.png) [@nicomengin](https://community.traefik.io/u/nicomengin)\
**Post date:** [November 23, 2023, 10:14am UTC](https://community.traefik.io/t/traefik-v2-11-proposal/20418/3 "2023-11-23T10:14:10Z")

</div>

Hello @bluepuma77,

Thank you for the feedback.

After discussing the scope with many people, with the other maintainers, we've settled that it's better to release a light [v2.11](https://github.com/traefik/traefik/issues/10192#issuecomment-1824119630) to focus on [v3.0.](https://github.com/traefik/traefik/issues/10260)

In your propositions, I've seen a couple of issues are enhancements on which we'd love the community help.  
If contributors open PRs addressing these topics, we'll gladly review them.

---

<div class="post-metadata">

**Author:** ![bluepuma77](https://avatars.discourse-cdn.com/v4/letter/b/a9adbd/32.png) [@bluepuma77](https://community.traefik.io/u/bluepuma77)\
**Post date:** [November 23, 2023, 2:18pm UTC](https://community.traefik.io/t/traefik-v2-11-proposal/20418/4 "2023-11-23T14:18:13Z")

</div>

Sadly I am no go developer, only JS and Python.

Why don’t you create some kind of Patreon (donation platform), where people can give a little money dedicated to bugs or features. That is then handed to developers.

* * *

Kind of intransparent to me is the development roadmap. There are Traefik employees, there are independent contributors, who is setting the priorities of what is implemented?

I am just interested as I am seeing with another open source tool, that pull requests are sitting unaccepted for multiple months, even though the community is interested.

**Update** : there is a related [post](https://community.traefik.io/t/traefik-v3-strategy/20556) 🙂
