pantig
January 21, 2024, 10:11pm
1
After many of tries, reading docs, forums and talking with chatgpt I have decided to create another topic on the forum.
I try to figure out how to use serversTransport in the Treafik dynamic config file, but nothing seems to work.
Here is my config file:
http:
routers:
devops:
rule: Host(`devops.mydomain.com`)
entryPoints:
- websecure
- web
service: devops
tls:
certResolver: letsencrypt
services:
devops:
loadBalancer:
serversTransport: devops-transport
servers:
- url: "http://some_address:8080"
serversTransport:
devops-transport:
disableHTTP2: true
I use Treafik 2.10.7 and tried many variations of this config: in dynamic config, in static config, in docker labels, adding @file directive after serversTransport name. None of them worked.
All I get is:
level=error msg="Error while building configuration (for the first time): /etc/traefik/dynamic/devops.mydomain.com.yml: field not found, node: serversTransport" providerName=file
Can please somebody help me and tell how I should set serversTransport to disable HTTP2 for my upstream in reverse proxy?
Share your full Traefik static and dynamic config, and docker-compose.yml if used.
The definition looks okay according to doc .
pantig
January 22, 2024, 12:11pm
3
Sure,
docker-compose.yml:
version: '3.8'
networks:
routing:
driver: bridge
services:
traefik:
image: traefik:2.10.7
restart: always
container_name: reverse_proxy_traefik
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./configs/traefik.yml:/etc/traefik/traefik.yml
- ./configs/dynamic:/etc/traefik/dynamic
- ./certificates/acme.json:/etc/traefik/acme/acme.json
networks:
- routing
Static config traefik.yml:
## static configuration
global:
# Send anonymous usage data
sendAnonymousUsage: false
entryPoints:
web:
address: ":80"
websecure:
address: ":443"
# Access logs
accessLog:
fields:
headers:
names:
User-Agent: keep
providers:
docker:
endpoint: "unix:///var/run/docker.sock"
exposedByDefault: false
file:
directory: /etc/traefik/dynamic
watch: true
certificatesResolvers:
letsencrypt:
acme:
tlschallenge: true
httpchallenge:
entrypoint: web
email: mymail@mydomain.com
storage: /etc/traefik/acme/acme.json
api:
dashboard: true
log:
level: ERROR
Dynamic config in devops.mydomain.com.yml:
http:
routers:
devops:
rule: Host(`devops.mydomain.com`)
entryPoints:
- websecure
- web
service: devops
tls:
certResolver: letsencrypt
services:
devops:
loadBalancer:
serversTransport: devops-transport
servers:
- url: "http://some_address:8080"
serversTransport:
devops-transport:
disableHTTP2: true
When I remove serversTransport directive all works fine, but I need this to run this proxy.
Probably way too late, but maybe for future reference:
Shouldn't it be plural (serversTransports )?
serversTransportS:
devops-transport:
disableHTTP2: true