Что вы пробовали? Что не сработало? Читая ваш вопрос, трудно сказать.
В вопросе есть элемент ответа , который вы открыли в репозитории cc-django.
Перво-наперво, я бы попытался вывести Traefik из уравнения и заставить это работать локально, выполняя что-то, как предлагалось. Как только он работает локально, нужно сопоставить правильный порт / контейнер с нужным доменом в Traefik.
Предполагая, что вы настроили docker-compose для запуска контейнеров django на портах 5000 и 5001, я думаю, вам нужно настроить раздел backends и frontends, как показано ниже:
[backends]
[backends.django1]
[backends.django1.servers.server1]
url = "http://django:5000"
[backends.django2]
[backends.django2.servers.server1]
url = "http://django:5001"
[frontends]
[frontends.django1]
backend = "django1"
passHostHeader = true
[frontends.django1.headers]
HostsProxyHeaders = ['X-CSRFToken']
[frontends.django1.routes.dr1]
rule = "Host:mydomain1.com"
[frontends.django2]
backend = "django2"
passHostHeader = true
[frontends.django2.headers]
HostsProxyHeaders = ['X-CSRFToken']
[frontends.django2.routes.dr1]
rule = "Host:mydomain2.com"
Я не пробовал это, но это было бы первым, что я сделал бы. Кроме того, похоже, что мы можем задать правила для интерфейсов для настройки маршрутизации.