Я использую Traefik в качестве обратного прокси-сервера для среды разработки на микросервисах.
Я бы хотел, чтобы Traefik делал следующее, когда я запрашиваю услугу (скажем, myservice.local
):
- Если у запрошенной службы запущен локальный бэкэнд для контейнера: направьте трафик к нему
- Если у запрошенной службы не запущен локальный бэкэнд: направьте трафик в удаленную промежуточную среду
Мое предположение о возможном способе сделать это - дать одно и то же имя удаленному и локальному бэкэнду:
[file]
[backends]
[backends.myservice]
[backends.myservice.servers.distant]
url = "http://myservice.appspot.com"
services:
myservice:
labels:
- "traefik.enable=true"
- "traefik.backend=myservice"
Но этот трюк не работает, в пользовательском интерфейсе я получаю два бэкэнда с одним и тем же именем на вкладке «Докер» и на вкладке «Файл».
Существует ли распространенный способ такого условного выбора бэкэнда?