Все службы Minio должны иметь одно и то же правило внешнего интерфейса и одно и то же имя бэкэнда.
labels:
- "traefik.frontend.rule=Host:minio.${DOMAIN}"
- "traefik.backend=minio"
- "traefik.port=9000"
Также, я думаю, вы неправильно поняли значение «бэкэнда».Бэкэнд - это сервер, на который Traefik направляет трафик на основе правил внешнего интерфейса.То же, что «upstream» / «location» в nginx.
Edit
Как указано в комментарии, эта конфигурация создает несколько внешних интерфейсов, все указывают на один и тот же бэкэнд, хотя это выглядит функциональнонекрасиво.Быстрое решение состоит в том, чтобы просто иметь один сервис с «внешним интерфейсом», но если этот сервис выйдет из строя, внешний интерфейс тоже пропадет.
Лучший способ сделать это - установить его в конфигурационном файле, traefik.Томль:
[frontends]
[frontends.frontend1]
backend = "minio"
[frontends.frontend1.minio]
rule = "Host: minio.${DOMAIN}”