Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

traefik v2 "standalone" + docker provider = can't communicate #6635

Closed
Gounlaf opened this issue Apr 4, 2020 · 1 comment
Closed

traefik v2 "standalone" + docker provider = can't communicate #6635

Gounlaf opened this issue Apr 4, 2020 · 1 comment

Comments

@Gounlaf
Copy link

Gounlaf commented Apr 4, 2020

Do you want to request a feature or report a bug?

Bug

What did you do?

I've installed traefik v2.2 as a standalone application (macOS, with brew).
I've configured 2 providers : docker (to be used as dynamic) and file (just to give access to dashboard).
I have a running docker service (via docker-compose) with the appropriate labels (an official swagger-editor image).

What did you expect to see?

I expect to access to dashboard.
I expect to access to my docker service.
I expect traefik to communicate with docker without be in a docker container.
I don't expect to have to run traefik as a docker container to be able to communicate with docker containers.

What did you see instead?

TL;DR: traefik works well in a full docker environment, but it didn't if is living outside it.

I got access to dashboard
I can't access to my docker service: got a Bad Gateway

In dashboard: #/http/services/traefik-swagger-editor@docker

  • the Server URL is almost correct: the IP of the container is OK, but the exposed port (there is only one) is not correctly detected (80 wherease it's a 8080 for this image)

So I forced it myself with the label traefik.http.services.<myservice>.loadbalancer.server.port=<correct_port>
Unfortunately it still doesn't work.

Then I disabled the standalone traefik, and use it as a container in my docker.
It works.

Below all the informations needed.

Thanks,

Regards.

Output of traefik version: (What version of Traefik are you using?)

Version:      2.2.0
Codename:     cheddar
Go version:   go1.14
Built:        I don't remember exactly
OS/Arch:      darwin/amd64

brew info traefik

traefik: stable 2.2.0 (bottled), HEAD
Modern reverse proxy
https://traefik.io/
/usr/local/Cellar/traefik/2.2.0 (7 files, 74.4MB) *
  Poured from bottle on 2020-04-04 at 19:49:12
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/traefik.rb
==> Dependencies
Build: go ✘, go-bindata ✘
==> Options
--HEAD
	Install HEAD version
==> Caveats
To have launchd start traefik now and restart at login:
  brew services start traefik
Or, if you don't want/need a background service you can just run:
  traefik
==> Analytics
install: 290 (30 days), 916 (90 days), 3,503 (365 days)
install-on-request: 287 (30 days), 910 (90 days), 3,491 (365 days)
build-error: 0 (30 days)

What is your environment & configuration (arguments, toml, provider, platform, ...)?

macOS Catalina 10.15.4
Docker Desktop 2.2.0.5
Docker 19.03.8

/usr/local/etc/traefik/traefik.toml

# https://github.com/containous/traefik/blob/v2.2/traefik.sample.toml
[global]
  checkNewVersion = true
  sendAnonymousUsage = true
[entryPoints]
  [entryPoints.web]
    address = ":80"

  [entryPoints.websecure]
    address = ":443"
[log]
  level = "DEBUG"
[accessLog]
  filePath = "/usr/local/var/log/traefik.log"

[api]
  insecure = true
  dashboard = true

[ping]

[providers.docker]
  defaultRule = "Host(`{{ normalize .Name }}.localhost`)"
  exposedByDefault = true

[providers.file]
  directory = "/Users/florianlevis/.config/traefik.d/"

/Users/florianlevis/.config/traefik.d/dashboard.toml content below:

[http.routers.dashboard]
   rule = "Host(`traefik.localhost`)"
   service = "api@internal"

docker-compose.yml

version: '3'
services:
    swagger:
        image: swaggerapi/swagger-editor
        labels:
          - traefik.http.routers.swagger.rule=Host(`swagger-editor.localhost`)
          - traefik.http.routers.swagger.entrypoints=web
          - traefik.http.services.swagger.loadbalancer.server.port=8080

If applicable, please paste the log output in DEBUG level (--log.level=DEBUG switch)

Logs before adding label to force the port:

time="2020-04-05T00:26:12+02:00" level=info msg="Configuration loaded from file: /usr/local/etc/traefik/traefik.toml"
time="2020-04-05T00:26:12+02:00" level=info msg="Traefik version 2.2.0 built on I don't remember exactly"
time="2020-04-05T00:26:12+02:00" level=debug msg="Static configuration loaded {\"global\":{\"checkNewVersion\":true,\"sendAnonymousUsage\":true},\"serversTransport\":{\"maxIdleConnsPerHost\":200},\"entryPoints\":{\"traefik\":{\"address\":\":8080\",\"transport\":{\"lifeCycle\":{\"graceTimeOut\":10000000000},\"respondingTimeouts\":{\"idleTimeout\":180000000000}},\"forwardedHeaders\":{},\"http\":{}},\"web\":{\"address\":\":80\",\"transport\":{\"lifeCycle\":{\"graceTimeOut\":10000000000},\"respondingTimeouts\":{\"idleTimeout\":180000000000}},\"forwardedHeaders\":{},\"http\":{}},\"websecure\":{\"address\":\":443\",\"transport\":{\"lifeCycle\":{\"graceTimeOut\":10000000000},\"respondingTimeouts\":{\"idleTimeout\":180000000000}},\"forwardedHeaders\":{},\"http\":{}}},\"providers\":{\"providersThrottleDuration\":2000000000,\"docker\":{\"watch\":true,\"endpoint\":\"unix:///var/run/docker.sock\",\"defaultRule\":\"Host(`{{ normalize .Name }}.localhost`)\",\"exposedByDefault\":true,\"swarmModeRefreshSeconds\":15000000000},\"file\":{\"directory\":\"/Users/florianlevis/.config/traefik.d/\",\"watch\":true}},\"api\":{\"insecure\":true,\"dashboard\":true},\"ping\":{\"entryPoint\":\"traefik\"},\"log\":{\"level\":\"DEBUG\",\"format\":\"common\"},\"accessLog\":{\"filePath\":\"/usr/local/var/log/traefik.log\",\"format\":\"common\",\"filters\":{},\"fields\":{\"defaultMode\":\"keep\",\"headers\":{\"defaultMode\":\"drop\"}}}}"
time="2020-04-05T00:26:12+02:00" level=info msg="Stats collection is enabled."
time="2020-04-05T00:26:12+02:00" level=info msg="Many thanks for contributing to Traefik's improvement by allowing us to receive anonymous information from your configuration."
time="2020-04-05T00:26:12+02:00" level=info msg="Help us improve Traefik by leaving this feature on :)"
time="2020-04-05T00:26:12+02:00" level=info msg="More details on: https://docs.traefik.io/contributing/data-collection/"
time="2020-04-05T00:26:12+02:00" level=debug msg="Start TCP Server" entryPointName=traefik
time="2020-04-05T00:26:12+02:00" level=info msg="Starting provider aggregator.ProviderAggregator {}"
time="2020-04-05T00:26:12+02:00" level=debug msg="Start TCP Server" entryPointName=web
time="2020-04-05T00:26:12+02:00" level=debug msg="Start TCP Server" entryPointName=websecure
time="2020-04-05T00:26:12+02:00" level=info msg="Starting provider *file.Provider {\"directory\":\"/Users/florianlevis/.config/traefik.d/\",\"watch\":true}"
time="2020-04-05T00:26:12+02:00" level=info msg="Starting provider *docker.Provider {\"watch\":true,\"endpoint\":\"unix:///var/run/docker.sock\",\"defaultRule\":\"Host(`{{ normalize .Name }}.localhost`)\",\"exposedByDefault\":true,\"swarmModeRefreshSeconds\":15000000000}"
time="2020-04-05T00:26:12+02:00" level=info msg="Starting provider *traefik.Provider {}"
time="2020-04-05T00:26:12+02:00" level=debug msg="Configuration received from provider file: {\"http\":{\"routers\":{\"dashboard\":{\"service\":\"api@internal\",\"rule\":\"Host(`traefik.localhost`)\"}}},\"tcp\":{},\"udp\":{},\"tls\":{}}" providerName=file
time="2020-04-05T00:26:12+02:00" level=debug msg="No entryPoint defined for this router, using the default one(s) instead: [web websecure]" routerName=dashboard
time="2020-04-05T00:26:12+02:00" level=debug msg="Configuration received from provider internal: {\"http\":{\"routers\":{\"api\":{\"entryPoints\":[\"traefik\"],\"service\":\"api@internal\",\"rule\":\"PathPrefix(`/api`)\",\"priority\":2147483646},\"dashboard\":{\"entryPoints\":[\"traefik\"],\"middlewares\":[\"dashboard_redirect@internal\",\"dashboard_stripprefix@internal\"],\"service\":\"dashboard@internal\",\"rule\":\"PathPrefix(`/`)\",\"priority\":2147483645},\"ping\":{\"entryPoints\":[\"traefik\"],\"service\":\"ping@internal\",\"rule\":\"PathPrefix(`/ping`)\",\"priority\":2147483647}},\"services\":{\"api\":{},\"dashboard\":{},\"noop\":{},\"ping\":{}},\"middlewares\":{\"dashboard_redirect\":{\"redirectRegex\":{\"regex\":\"^(http:\\\\/\\\\/[^:\\\\/]+(:\\\\d+)?)\\\\/$\",\"replacement\":\"${1}/dashboard/\",\"permanent\":true}},\"dashboard_stripprefix\":{\"stripPrefix\":{\"prefixes\":[\"/dashboard/\",\"/dashboard\"]}}}},\"tcp\":{},\"tls\":{}}" providerName=internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware api@internal" middlewareType=TracingForwarder entryPointName=web routerName=dashboard@file middlewareName=tracing
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery middlewareType=Recovery entryPointName=web
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery middlewareType=Recovery entryPointName=websecure
time="2020-04-05T00:26:12+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:26:12+02:00" level=debug msg="Provider connection established with docker 19.03.8 (API 1.40)" providerName=docker
time="2020-04-05T00:26:12+02:00" level=debug msg="Configuration received from provider docker: {\"http\":{},\"tcp\":{},\"udp\":{}}" providerName=docker
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware api@internal" routerName=dashboard@file middlewareName=tracing middlewareType=TracingForwarder entryPointName=web
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" entryPointName=web middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery entryPointName=websecure middlewareType=Recovery
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware api@internal" entryPointName=traefik routerName=api@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware dashboard@internal" routerName=dashboard@internal middlewareName=tracing middlewareType=TracingForwarder entryPointName=traefik
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_stripprefix@internal middlewareType=StripPrefix
time="2020-04-05T00:26:12+02:00" level=debug msg="Adding tracing to middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" middlewareType=RedirectRegex entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Setting up redirection from ^(http:\\/\\/[^:\\/]+(:\\d+)?)\\/$ to ${1}/dashboard/" middlewareName=dashboard_redirect@internal middlewareType=RedirectRegex entryPointName=traefik routerName=dashboard@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Adding tracing to middleware" routerName=dashboard@internal entryPointName=traefik middlewareName=dashboard_redirect@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware ping@internal" entryPointName=traefik routerName=ping@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery middlewareType=Recovery entryPointName=traefik
time="2020-04-05T00:26:12+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware api@internal" entryPointName=traefik routerName=api@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware dashboard@internal" entryPointName=traefik routerName=dashboard@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" entryPointName=traefik routerName=dashboard@internal middlewareType=StripPrefix middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Adding tracing to middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" middlewareType=RedirectRegex entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Setting up redirection from ^(http:\\/\\/[^:\\/]+(:\\d+)?)\\/$ to ${1}/dashboard/" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal middlewareType=RedirectRegex
time="2020-04-05T00:26:12+02:00" level=debug msg="Adding tracing to middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware ping@internal" entryPointName=traefik routerName=ping@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" entryPointName=traefik middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:26:12+02:00" level=debug msg="Added outgoing tracing middleware api@internal" entryPointName=web routerName=dashboard@file middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" entryPointName=web middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:26:12+02:00" level=debug msg="Creating middleware" entryPointName=websecure middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:26:12+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:26:31+02:00" level=debug msg="Provider event received {Status:start ID:b4b7b9a5d36fc3773bd64f937ed1c0ad4ca5139edb83517d9590b55804f149bb From:swaggerapi/swagger-editor Type:container Action:start Actor:{ID:b4b7b9a5d36fc3773bd64f937ed1c0ad4ca5139edb83517d9590b55804f149bb Attributes:map[com.docker.compose.config-hash:6415fd0769191070aca928df0940611936f4556081aabea6dcdc0051b8be67b0 com.docker.compose.container-number:1 com.docker.compose.oneoff:False com.docker.compose.project:swagger-editor com.docker.compose.project.config_files:docker-compose.yml com.docker.compose.project.working_dir:/Users/florianlevis/Serveur/0tools/swagger-editor com.docker.compose.service:swagger com.docker.compose.version:1.25.4 image:swaggerapi/swagger-editor maintainer:NGINX Docker Maintainers <docker-maint@nginx.com> name:swagger-editor_swagger_1 traefik.http.routers.swagger.entrypoints:web traefik.http.routers.swagger.rule:Host(`swagger-editor.localhost`)]} Scope:local Time:1586039191 TimeNano:1586039191177567872}" providerName=docker
time="2020-04-05T00:26:31+02:00" level=debug msg="Configuration received from provider docker: {\"http\":{\"routers\":{\"swagger\":{\"entryPoints\":[\"web\"],\"service\":\"swagger-swagger-editor\",\"rule\":\"Host(`swagger-editor.localhost`)\"}},\"services\":{\"swagger-swagger-editor\":{\"loadBalancer\":{\"servers\":[{\"url\":\"http://192.168.176.2:80\"}],\"passHostHeader\":true}}}},\"tcp\":{},\"udp\":{}}" providerName=docker
time="2020-04-05T00:26:31+02:00" level=debug msg="Added outgoing tracing middleware api@internal" middlewareType=TracingForwarder entryPointName=web routerName=dashboard@file middlewareName=tracing
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating middleware" middlewareName=pipelining middlewareType=Pipelining entryPointName=web routerName=swagger@docker serviceName=swagger-swagger-editor
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating load-balancer" serviceName=swagger-swagger-editor entryPointName=web routerName=swagger@docker
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating server 0 http://192.168.176.2:80" routerName=swagger@docker serviceName=swagger-swagger-editor entryPointName=web serverName=0
time="2020-04-05T00:26:31+02:00" level=debug msg="Added outgoing tracing middleware swagger-swagger-editor" entryPointName=web routerName=swagger@docker middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery middlewareType=Recovery entryPointName=web
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery middlewareType=Recovery entryPointName=websecure
time="2020-04-05T00:26:31+02:00" level=debug msg="Added outgoing tracing middleware api@internal" entryPointName=traefik routerName=api@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:31+02:00" level=debug msg="Added outgoing tracing middleware dashboard@internal" entryPointName=traefik routerName=dashboard@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating middleware" entryPointName=traefik routerName=dashboard@internal middlewareType=StripPrefix middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:26:31+02:00" level=debug msg="Adding tracing to middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal middlewareType=RedirectRegex
time="2020-04-05T00:26:31+02:00" level=debug msg="Setting up redirection from ^(http:\\/\\/[^:\\/]+(:\\d+)?)\\/$ to ${1}/dashboard/" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal middlewareType=RedirectRegex
time="2020-04-05T00:26:31+02:00" level=debug msg="Adding tracing to middleware" routerName=dashboard@internal middlewareName=dashboard_redirect@internal entryPointName=traefik
time="2020-04-05T00:26:31+02:00" level=debug msg="Added outgoing tracing middleware ping@internal" middlewareType=TracingForwarder entryPointName=traefik routerName=ping@internal middlewareName=tracing
time="2020-04-05T00:26:31+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery middlewareType=Recovery entryPointName=traefik
time="2020-04-05T00:26:31+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:26:37+02:00" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\"],\"Accept-Encoding\":[\"gzip, deflate\"],\"Accept-Language\":[\"fr-FR,fr;q=0.5\"],\"Cache-Control\":[\"max-age=0\"],\"Connection\":[\"keep-alive\"],\"Dnt\":[\"1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:74.0) Gecko/20100101 Firefox/74.0\"],\"X-Forwarded-Host\":[\"swagger-editor.localhost\"],\"X-Forwarded-Port\":[\"80\"],\"X-Forwarded-Proto\":[\"http\"],\"X-Forwarded-Server\":[\"zaphod.local\"],\"X-Real-Ip\":[\"::1\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"swagger-editor.localhost\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"[::1]:58775\",\"RequestURI\":\"/\",\"TLS\":null}"
time="2020-04-05T00:26:37+02:00" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\"],\"Accept-Encoding\":[\"gzip, deflate\"],\"Accept-Language\":[\"fr-FR,fr;q=0.5\"],\"Cache-Control\":[\"max-age=0\"],\"Connection\":[\"keep-alive\"],\"Dnt\":[\"1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:74.0) Gecko/20100101 Firefox/74.0\"],\"X-Forwarded-Host\":[\"swagger-editor.localhost\"],\"X-Forwarded-Port\":[\"80\"],\"X-Forwarded-Proto\":[\"http\"],\"X-Forwarded-Server\":[\"zaphod.local\"],\"X-Real-Ip\":[\"::1\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"swagger-editor.localhost\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"[::1]:58775\",\"RequestURI\":\"/\",\"TLS\":null}" ForwardURL="http://192.168.176.2:80"
time="2020-04-05T00:26:44+02:00" level=debug msg="'502 Bad Gateway' caused by: dial tcp 192.168.176.2:80: connect: network is unreachable"
time="2020-04-05T00:26:44+02:00" level=debug msg="vulcand/oxy/roundrobin/rr: completed ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\"],\"Accept-Encoding\":[\"gzip, deflate\"],\"Accept-Language\":[\"fr-FR,fr;q=0.5\"],\"Cache-Control\":[\"max-age=0\"],\"Connection\":[\"keep-alive\"],\"Dnt\":[\"1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:74.0) Gecko/20100101 Firefox/74.0\"],\"X-Forwarded-Host\":[\"swagger-editor.localhost\"],\"X-Forwarded-Port\":[\"80\"],\"X-Forwarded-Proto\":[\"http\"],\"X-Forwarded-Server\":[\"zaphod.local\"],\"X-Real-Ip\":[\"::1\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"swagger-editor.localhost\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"[::1]:58775\",\"RequestURI\":\"/\",\"TLS\":null}"
::1 - - [04/Apr/2020:22:26:37 +0000] "GET / HTTP/1.1" 502 11 "-" "-" 3 "swagger@docker" "http://192.168.176.2:80" 7023ms

Logs after adding label to force the port:

time="2020-04-05T00:29:14+02:00" level=info msg="Configuration loaded from file: /usr/local/etc/traefik/traefik.toml"
time="2020-04-05T00:29:14+02:00" level=info msg="Traefik version 2.2.0 built on I don't remember exactly"
time="2020-04-05T00:29:14+02:00" level=debug msg="Static configuration loaded {\"global\":{\"checkNewVersion\":true,\"sendAnonymousUsage\":true},\"serversTransport\":{\"maxIdleConnsPerHost\":200},\"entryPoints\":{\"traefik\":{\"address\":\":8080\",\"transport\":{\"lifeCycle\":{\"graceTimeOut\":10000000000},\"respondingTimeouts\":{\"idleTimeout\":180000000000}},\"forwardedHeaders\":{},\"http\":{}},\"web\":{\"address\":\":80\",\"transport\":{\"lifeCycle\":{\"graceTimeOut\":10000000000},\"respondingTimeouts\":{\"idleTimeout\":180000000000}},\"forwardedHeaders\":{},\"http\":{}},\"websecure\":{\"address\":\":443\",\"transport\":{\"lifeCycle\":{\"graceTimeOut\":10000000000},\"respondingTimeouts\":{\"idleTimeout\":180000000000}},\"forwardedHeaders\":{},\"http\":{}}},\"providers\":{\"providersThrottleDuration\":2000000000,\"docker\":{\"watch\":true,\"endpoint\":\"unix:///var/run/docker.sock\",\"defaultRule\":\"Host(`{{ normalize .Name }}.localhost`)\",\"exposedByDefault\":true,\"swarmModeRefreshSeconds\":15000000000},\"file\":{\"directory\":\"/Users/florianlevis/.config/traefik.d/\",\"watch\":true}},\"api\":{\"insecure\":true,\"dashboard\":true},\"ping\":{\"entryPoint\":\"traefik\"},\"log\":{\"level\":\"DEBUG\",\"format\":\"common\"},\"accessLog\":{\"filePath\":\"/usr/local/var/log/traefik.log\",\"format\":\"common\",\"filters\":{},\"fields\":{\"defaultMode\":\"keep\",\"headers\":{\"defaultMode\":\"drop\"}}}}"
time="2020-04-05T00:29:14+02:00" level=info msg="Stats collection is enabled."
time="2020-04-05T00:29:14+02:00" level=info msg="Many thanks for contributing to Traefik's improvement by allowing us to receive anonymous information from your configuration."
time="2020-04-05T00:29:14+02:00" level=info msg="Help us improve Traefik by leaving this feature on :)"
time="2020-04-05T00:29:14+02:00" level=info msg="More details on: https://docs.traefik.io/contributing/data-collection/"
time="2020-04-05T00:29:14+02:00" level=debug msg="Start TCP Server" entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=info msg="Starting provider aggregator.ProviderAggregator {}"
time="2020-04-05T00:29:14+02:00" level=debug msg="Start TCP Server" entryPointName=web
time="2020-04-05T00:29:14+02:00" level=debug msg="Start TCP Server" entryPointName=websecure
time="2020-04-05T00:29:14+02:00" level=info msg="Starting provider *file.Provider {\"directory\":\"/Users/florianlevis/.config/traefik.d/\",\"watch\":true}"
time="2020-04-05T00:29:14+02:00" level=info msg="Starting provider *traefik.Provider {}"
time="2020-04-05T00:29:14+02:00" level=info msg="Starting provider *docker.Provider {\"watch\":true,\"endpoint\":\"unix:///var/run/docker.sock\",\"defaultRule\":\"Host(`{{ normalize .Name }}.localhost`)\",\"exposedByDefault\":true,\"swarmModeRefreshSeconds\":15000000000}"
time="2020-04-05T00:29:14+02:00" level=debug msg="Configuration received from provider file: {\"http\":{\"routers\":{\"dashboard\":{\"service\":\"api@internal\",\"rule\":\"Host(`traefik.localhost`)\"}}},\"tcp\":{},\"udp\":{},\"tls\":{}}" providerName=file
time="2020-04-05T00:29:14+02:00" level=debug msg="Configuration received from provider internal: {\"http\":{\"routers\":{\"api\":{\"entryPoints\":[\"traefik\"],\"service\":\"api@internal\",\"rule\":\"PathPrefix(`/api`)\",\"priority\":2147483646},\"dashboard\":{\"entryPoints\":[\"traefik\"],\"middlewares\":[\"dashboard_redirect@internal\",\"dashboard_stripprefix@internal\"],\"service\":\"dashboard@internal\",\"rule\":\"PathPrefix(`/`)\",\"priority\":2147483645},\"ping\":{\"entryPoints\":[\"traefik\"],\"service\":\"ping@internal\",\"rule\":\"PathPrefix(`/ping`)\",\"priority\":2147483647}},\"services\":{\"api\":{},\"dashboard\":{},\"noop\":{},\"ping\":{}},\"middlewares\":{\"dashboard_redirect\":{\"redirectRegex\":{\"regex\":\"^(http:\\\\/\\\\/[^:\\\\/]+(:\\\\d+)?)\\\\/$\",\"replacement\":\"${1}/dashboard/\",\"permanent\":true}},\"dashboard_stripprefix\":{\"stripPrefix\":{\"prefixes\":[\"/dashboard/\",\"/dashboard\"]}}}},\"tcp\":{},\"tls\":{}}" providerName=internal
time="2020-04-05T00:29:14+02:00" level=debug msg="No entryPoint defined for this router, using the default one(s) instead: [web websecure]" routerName=dashboard
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware api@internal" middlewareType=TracingForwarder routerName=dashboard@file entryPointName=web middlewareName=tracing
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" middlewareType=Recovery entryPointName=web middlewareName=traefik-internal-recovery
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" entryPointName=websecure middlewareType=Recovery middlewareName=traefik-internal-recovery
time="2020-04-05T00:29:14+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:29:14+02:00" level=debug msg="Provider connection established with docker 19.03.8 (API 1.40)" providerName=docker
time="2020-04-05T00:29:14+02:00" level=debug msg="Configuration received from provider docker: {\"http\":{},\"tcp\":{},\"udp\":{}}" providerName=docker
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware api@internal" routerName=dashboard@file entryPointName=web middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery entryPointName=web middlewareType=Recovery
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" entryPointName=websecure middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware ping@internal" routerName=ping@internal entryPointName=traefik middlewareType=TracingForwarder middlewareName=tracing
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware api@internal" entryPointName=traefik routerName=api@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware dashboard@internal" routerName=dashboard@internal middlewareName=tracing middlewareType=TracingForwarder entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_stripprefix@internal middlewareType=StripPrefix
time="2020-04-05T00:29:14+02:00" level=debug msg="Adding tracing to middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" routerName=dashboard@internal middlewareName=dashboard_redirect@internal middlewareType=RedirectRegex entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=debug msg="Setting up redirection from ^(http:\\/\\/[^:\\/]+(:\\d+)?)\\/$ to ${1}/dashboard/" middlewareType=RedirectRegex entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal
time="2020-04-05T00:29:14+02:00" level=debug msg="Adding tracing to middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" middlewareName=traefik-internal-recovery middlewareType=Recovery entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware api@internal" middlewareType=TracingForwarder entryPointName=web routerName=dashboard@file middlewareName=tracing
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" entryPointName=web middlewareType=Recovery middlewareName=traefik-internal-recovery
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" entryPointName=websecure middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware api@internal" routerName=api@internal middlewareName=tracing middlewareType=TracingForwarder entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware dashboard@internal" entryPointName=traefik routerName=dashboard@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" routerName=dashboard@internal middlewareType=StripPrefix middlewareName=dashboard_stripprefix@internal entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=debug msg="Adding tracing to middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" routerName=dashboard@internal middlewareName=dashboard_redirect@internal middlewareType=RedirectRegex entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=debug msg="Setting up redirection from ^(http:\\/\\/[^:\\/]+(:\\d+)?)\\/$ to ${1}/dashboard/" middlewareType=RedirectRegex entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal
time="2020-04-05T00:29:14+02:00" level=debug msg="Adding tracing to middleware" routerName=dashboard@internal middlewareName=dashboard_redirect@internal entryPointName=traefik
time="2020-04-05T00:29:14+02:00" level=debug msg="Added outgoing tracing middleware ping@internal" entryPointName=traefik routerName=ping@internal middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:29:14+02:00" level=debug msg="Creating middleware" entryPointName=traefik middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:29:14+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:29:20+02:00" level=debug msg="Provider event received {Status:start ID:1f94059d10edd6868739446562c5b4d143c4954f4bc4f1c14dab4dfa6eb56dba From:swaggerapi/swagger-editor Type:container Action:start Actor:{ID:1f94059d10edd6868739446562c5b4d143c4954f4bc4f1c14dab4dfa6eb56dba Attributes:map[com.docker.compose.config-hash:0e354bfb2a2cc66a19d53cbd683659357b428918257af8da89898444f1448394 com.docker.compose.container-number:1 com.docker.compose.oneoff:False com.docker.compose.project:swagger-editor com.docker.compose.project.config_files:docker-compose.yml com.docker.compose.project.working_dir:/Users/florianlevis/Serveur/0tools/swagger-editor com.docker.compose.service:swagger com.docker.compose.version:1.25.4 image:swaggerapi/swagger-editor maintainer:NGINX Docker Maintainers <docker-maint@nginx.com> name:swagger-editor_swagger_1 traefik.http.routers.swagger.entrypoints:web traefik.http.routers.swagger.rule:Host(`swagger-editor.localhost`) traefik.http.services.swagger.loadbalancer.server.port:8080]} Scope:local Time:1586039360 TimeNano:1586039360045688675}" providerName=docker
time="2020-04-05T00:29:20+02:00" level=debug msg="Configuration received from provider docker: {\"http\":{\"routers\":{\"swagger\":{\"entryPoints\":[\"web\"],\"service\":\"swagger\",\"rule\":\"Host(`swagger-editor.localhost`)\"}},\"services\":{\"swagger\":{\"loadBalancer\":{\"servers\":[{\"url\":\"http://192.168.176.2:8080\"}],\"passHostHeader\":true}}}},\"tcp\":{},\"udp\":{}}" providerName=docker
time="2020-04-05T00:29:20+02:00" level=debug msg="Added outgoing tracing middleware api@internal" routerName=dashboard@file middlewareName=tracing middlewareType=TracingForwarder entryPointName=web
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating middleware" serviceName=swagger middlewareName=pipelining middlewareType=Pipelining entryPointName=web routerName=swagger@docker
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating load-balancer" serviceName=swagger entryPointName=web routerName=swagger@docker
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating server 0 http://192.168.176.2:8080" serviceName=swagger serverName=0 entryPointName=web routerName=swagger@docker
time="2020-04-05T00:29:20+02:00" level=debug msg="Added outgoing tracing middleware swagger" entryPointName=web routerName=swagger@docker middlewareName=tracing middlewareType=TracingForwarder
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating middleware" middlewareType=Recovery entryPointName=web middlewareName=traefik-internal-recovery
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating middleware" middlewareType=Recovery entryPointName=websecure middlewareName=traefik-internal-recovery
time="2020-04-05T00:29:20+02:00" level=debug msg="Added outgoing tracing middleware dashboard@internal" middlewareName=tracing middlewareType=TracingForwarder entryPointName=traefik routerName=dashboard@internal
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating middleware" middlewareName=dashboard_stripprefix@internal middlewareType=StripPrefix entryPointName=traefik routerName=dashboard@internal
time="2020-04-05T00:29:20+02:00" level=debug msg="Adding tracing to middleware" routerName=dashboard@internal entryPointName=traefik middlewareName=dashboard_stripprefix@internal
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating middleware" entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal middlewareType=RedirectRegex
time="2020-04-05T00:29:20+02:00" level=debug msg="Setting up redirection from ^(http:\\/\\/[^:\\/]+(:\\d+)?)\\/$ to ${1}/dashboard/" middlewareType=RedirectRegex entryPointName=traefik routerName=dashboard@internal middlewareName=dashboard_redirect@internal
time="2020-04-05T00:29:20+02:00" level=debug msg="Adding tracing to middleware" routerName=dashboard@internal middlewareName=dashboard_redirect@internal entryPointName=traefik
time="2020-04-05T00:29:20+02:00" level=debug msg="Added outgoing tracing middleware ping@internal" middlewareName=tracing middlewareType=TracingForwarder entryPointName=traefik routerName=ping@internal
time="2020-04-05T00:29:20+02:00" level=debug msg="Added outgoing tracing middleware api@internal" middlewareType=TracingForwarder entryPointName=traefik routerName=api@internal middlewareName=tracing
time="2020-04-05T00:29:20+02:00" level=debug msg="Creating middleware" entryPointName=traefik middlewareName=traefik-internal-recovery middlewareType=Recovery
time="2020-04-05T00:29:20+02:00" level=debug msg="No default certificate, generating one"
time="2020-04-05T00:29:33+02:00" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\"],\"Accept-Encoding\":[\"gzip, deflate\"],\"Accept-Language\":[\"fr-FR,fr;q=0.5\"],\"Cache-Control\":[\"max-age=0\"],\"Connection\":[\"keep-alive\"],\"Dnt\":[\"1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:74.0) Gecko/20100101 Firefox/74.0\"],\"X-Forwarded-Host\":[\"swagger-editor.localhost\"],\"X-Forwarded-Port\":[\"80\"],\"X-Forwarded-Proto\":[\"http\"],\"X-Forwarded-Server\":[\"zaphod.local\"],\"X-Real-Ip\":[\"::1\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"swagger-editor.localhost\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"[::1]:58859\",\"RequestURI\":\"/\",\"TLS\":null}"
time="2020-04-05T00:29:33+02:00" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\"],\"Accept-Encoding\":[\"gzip, deflate\"],\"Accept-Language\":[\"fr-FR,fr;q=0.5\"],\"Cache-Control\":[\"max-age=0\"],\"Connection\":[\"keep-alive\"],\"Dnt\":[\"1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:74.0) Gecko/20100101 Firefox/74.0\"],\"X-Forwarded-Host\":[\"swagger-editor.localhost\"],\"X-Forwarded-Port\":[\"80\"],\"X-Forwarded-Proto\":[\"http\"],\"X-Forwarded-Server\":[\"zaphod.local\"],\"X-Real-Ip\":[\"::1\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"swagger-editor.localhost\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"[::1]:58859\",\"RequestURI\":\"/\",\"TLS\":null}" ForwardURL="http://192.168.176.2:8080"
time="2020-04-05T00:29:40+02:00" level=debug msg="'502 Bad Gateway' caused by: dial tcp 192.168.176.2:8080: connect: network is unreachable"
time="2020-04-05T00:29:40+02:00" level=debug msg="vulcand/oxy/roundrobin/rr: completed ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\"],\"Accept-Encoding\":[\"gzip, deflate\"],\"Accept-Language\":[\"fr-FR,fr;q=0.5\"],\"Cache-Control\":[\"max-age=0\"],\"Connection\":[\"keep-alive\"],\"Dnt\":[\"1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:74.0) Gecko/20100101 Firefox/74.0\"],\"X-Forwarded-Host\":[\"swagger-editor.localhost\"],\"X-Forwarded-Port\":[\"80\"],\"X-Forwarded-Proto\":[\"http\"],\"X-Forwarded-Server\":[\"zaphod.local\"],\"X-Real-Ip\":[\"::1\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"swagger-editor.localhost\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"[::1]:58859\",\"RequestURI\":\"/\",\"TLS\":null}"
::1 - - [04/Apr/2020:22:29:33 +0000] "GET / HTTP/1.1" 502 11 "-" "-" 1 "swagger@docker" "http://192.168.176.2:8080" 7032ms
@traefiker
Copy link
Contributor

Hi! I'm Træfiker 🤖 the bot in charge of communication regulation.

Thanks for your interest in Traefik!

We dedicate the issue tracker to bug reports and feature requests only. My advanced AI has spotted that your issue might be a configuration problem or relates to something that doesn't look like a bug.

To confirm this, please join our Community Forum and reach out to us on the Traefik section.

In case I'm wrong (well, that would be embarrassing 😅), my developers will re-open the issue and fix me!

In the meantime, you can double check Traefik's documentation.

@traefik traefik locked and limited conversation to collaborators May 6, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants