-
-
Notifications
You must be signed in to change notification settings - Fork 5.8k
Description
Do you want to request a feature or report a bug?
Bug
What did you do?
I've been using traefik on Swarm for serving gitlab registry and gitlab git service be on the same container for a while, but as of 1.6.5 i'm unable to access either service or wrong redirection to a specfic service, reason i'm staying in 1.6.0 for now.
What did you expect to see?
Be able to access both services gitlab.domain.com and registry.domain.com
What did you see instead?
Unable to access either service, or access Git service at registry.domain.com and Registry at gitlab.domain.com
Output of traefik version: (What version of Traefik are you using?)
Version: v1.6.5
Codename: tetedemoine
Go version: go1.10.3
Built: 2018-07-10_03:54:03PM
OS/Arch: linux/arm
What is your environment & configuration (arguments, toml, provider, platform, ...)?
-
Docker v17.12.1
-
GitLab image is a monolithic with all the services into it, both of the services (Registry and Git) need to be served in the same container, following is the docker compose file definition i use for it.
...
labels:
- "traefik.backend.loadbalancer.stickiness=true"
- "traefik.backend.loadbalancer.swarm=true"
- "traefik.backend=gitlab"
- "traefik.docker.network=the-force"
- "traefik.frontend.entrypoints=https"
- "traefik.frontend.headers.SSLProxyHeaders=X-Forwarded-For:https"
- "traefik.frontend.headers.STSSeconds=315360000"
- "traefik.frontend.headers.browserXSSFilter=true"
- "traefik.frontend.headers.contentTypeNosniff=true"
- "traefik.frontend.headers.customrequestheaders=X-Forwarded-Ssl:on"
- "traefik.frontend.passHostHeader=true"
- "traefik.frontend.passTLSCert=false"
- "traefik.lab.frontend.rule=Host:gitlab.domain.com"
- "traefik.lab.port=80"
- "traefik.reg.frontend.rule=Host:registry.domain.com"
- "traefik.reg.port=5001"
...- Traefik config
logLevel = "DEBUG"
debug = true
checkNewVersion = true
ProvidersThrottleDuration = "5s"
MaxIdleConnsPerHost = 200
defaultEntryPoints = ["http", "https"]
[lifeCycle]
requestAcceptGraceTimeout = "10s"
graceTimeOut = "10s"
[traefikLog]
filePath = "log/traefik.log"
format = "json"
[accessLog]
filePath = "log/access.log"
format = "json"
[retry]
attempts = 3
[healthcheck]
interval = "30s"
[entryPoints]
[entryPoints.http]
address = ":80"
compress = true
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
[entryPoints.api]
address=":8080"
[entryPoints.api.auth]
[entryPoints.api.auth.basic]
users = ["USER:HASH"]
[api]
entryPoint = "api"
dashboard = true
debug = true
[api.statistics]
RecentErrors = 10
[metrics]
[metrics.statistics]
recentErrors = 10
[metrics.prometheus]
entryPoint = "api"
buckets = [0.1,0.3,1.2,5.0]
[rest]
entryPoint = "api"
[ping]
entryPoint = "api"
[acme]
email = "user@mail.com"
storage = "acme/acme.json"
entryPoint = "https"
OnHostRule = true
acmeLogging = true
[acme.dnsChallenge]
provider = "dnsimple"
delayDontCheckDNS = 0
[acme.httpChallenge]
entryPoint = "http"
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "proxy.domain.com"
watch = true
swarmmode = trueScreenshots
If this is useful, when using traefik 1.6.5, it only creates a single backend for both services
But 1.6.0 creates one for each of them

