将多个(子)域绑定到Traefik中不同端口的Docker容器的方法如下:
example1.com
和example2.com
,需要绑定到同一个容器的不同端口。version: '3'
services:
traefik:
image: traefik:v2.5
command:
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
ports:
- "80:80"
- "8080:8080"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
labels:
- "traefik.enable=true"
- "traefik.http.routers.api.rule=Host(`traefik.example.com`)"
- "traefik.http.routers.api.service=api@internal"
example1:
image: your_image1
labels:
- "traefik.enable=true"
- "traefik.http.routers.example1.rule=Host(`example1.com`)"
- "traefik.http.routers.example1.service=example1"
- "traefik.http.services.example1.loadbalancer.server.port=8081"
example2:
image: your_image2
labels:
- "traefik.enable=true"
- "traefik.http.routers.example2.rule=Host(`example2.com`)"
- "traefik.http.routers.example2.service=example2"
- "traefik.http.services.example2.loadbalancer.server.port=8082"
在上述配置中,Traefik容器监听80端口,并将流量路由到相应的服务。example1
和example2
是两个示例的Docker容器,分别绑定到8081和8082端口,并使用不同的域名进行访问。
example1.com
和example2.com
即可访问到相应的Docker容器。请注意,以上仅为示例配置,实际配置可能因环境和需求而有所不同。建议参考Traefik的官方文档和腾讯云的相关产品文档进行详细配置和调整。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云