We run Docker Swarm and would like to expose the api/dashboard of every global Traefik instance on separate port 8080 on their corresponding host with a password.
The issue is that all the examples use a router with a hostname. How can we access the dashboard on the entrypoint without a hostname, we would just like to use IP:port? (And the IP can not be fixed because it is different on every node)
providers: docker: endpoint: "unix:///var/run/docker.sock" swarmMode: true exposedByDefault: false network: proxy file: filename: /dynamic.yml watch: true entryPoints: web: address: :80 http: redirections: entryPoint: to: websecure scheme: https websecure: address: :443 traefik: address: :8080 api: debug: true dashboard: true insecure: false
version: '3.9' services: traefik: image: traefik:v2.8.3 command: --configFile=/traefik.yml --log.level=DEBUG ports: # HTTP/S ports on host without ingress network - target: 80 published: 80 protocol: tcp mode: host - target: 443 published: 443 protocol: tcp mode: host # Traefik Web UI - target: 8080 published: 8080 protocol: tcp mode: host networks: - proxy volumes: # include docker.sock for service discovery - /var/run/docker.sock:/var/run/docker.sock configs: - traefik.yml - dynamic.yml deploy: mode: global networks: # overlay network for routing to services proxy: name: proxy driver: overlay attachable: true configs: traefik.yml: file: ./traefik.yml dynamic.yml: file: ./dynamic.yml