Нет упомянутой метки docker для указания URL (в https://docs.traefik.io/v2.1/routing/providers/docker/#routers). И я попытался использовать URL вместо порта, но он не работает.
Поэтому я предлагаю использовать провайдер файлов (https://docs.traefik.io/v2.1/providers/file/).
суть предложения для реализации:
обновите вашу конфигурацию с помощью:
services:
...
traefik:
...
command:
...
- "--providers.file.directory=/path/to/dynamic/conf"
config:
- source: redirect.toml
target: /path/to/dynamic/conf/redirect.toml
...
...
configs:
redirect.toml:
file: redirect.toml
и создайте redirect.toml с вашим перенаправлением (как в вашем примере).
Конечно, вы также можете привязать конфигурацию в контейнер, или создать свой собственный образ traefik, содержащий конфигурацию, или ...
Если вы хотите работать с метками, вы можете запустить службу, которая перенаправляет с socat
services:
...
netdata:
image: alpine/socat
command: tcp-listen:80,fork,reuseaddr tcp-connect:192.168.0.2:19999
deploy:
labels:
traefik.enable: "true"
traefik.http.routers.netdata.rule: Host(`netdata.my-domain.com`)
traefik.http.services.netdata_srv.loadbalancer.server.port: 80
# hm, and probably tell to forward as https, ...