我正在尝试使用traefik中间件,但是以下traefik中间件都无法用于已部署的服务,以下是docker-compose文件和toml文件。我正在用toml文件初始化traefik有人可以发现任何错误吗?
version: '3'
services:
traefik:
image: traefik
command: -c /traefik.toml --logLevel=DEBUG
ports:
- "80:80"
- "8086:8080"
networks:
- traefik
volumes:
- ./traefik.toml:/traefik.toml
- /var/run/docker.sock:/var/run/docker.sock
whoami:
image: emilevauge/whoami
networks:
- traefik
labels:
- traefik.enable=true
- "traefik.frontend.rule=Host:link.docker.localhost"
authservice:
image: authservice
networks:
- traefik
ports:
- "7000:80"
labels:
- traefik.enable=true
- "traefik.frontend.rule=Host:authservice.docker.localhost"
- "traefik.http.middlewares.test-replacepath.replacepath.path=/swagger"
networks:
traefik:
---------toml file
defaultEntryPoints = ["http", "https"]
[entryPoints]
[entryPoints.http]
address = ":80"
compress = true
[web]
address = ":8080"
[docker]
endpoint = "unix:///var/run/docker.sock"
最佳答案
您正在混合使用Traefik v1和Traefik v2配置。
traefik.frontend.rule
-> Traefik v1 traefik.http.middlewares.test-replacepath.replacepath.path
-> Traefik v2 Traefik v1和Traefik v2配置不兼容。
文档:
关于docker - Traefik中间件无法与docker compose一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56191328/