A bug.
Set up some security headers on my containers.
version: "3"
traefik:
image: traefik:1.5-alpine
container_name: traefik
restart: unless-stopped
ports:
- "80:80"
- "443:443"
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:mail.domain.tld
- traefik.backend.port=8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./certs:/certs
- ./traefik.toml:/traefik.toml:ro
rainloop:
image: hardware/rainloop
container_name: rainloop
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.backend.port=8888
- traefik.frontend.rule=Host:webmail.domain.tld
- traefik.frontend.headers.frameDeny=false
- traefik.frontend.headers.browserXSSFilter=true
- traefik.frontend.headers.isDevelopment=false
- traefik.frontend.headers.STSSeconds=315360000
- traefik.frontend.headers.forceSTSHeader=false
- traefik.frontend.headers.contentTypeNosniff=true
volumes:
- /mnt/docker/rainloop:/rainloop/data
depends_on:
- mailserver
- mariadb
I expect all headers requested in the docker-compose.yml file.
# curl -I https://webmail.domain.tld/
HTTP/2 200
cache-control: no-store, no-cache, must-revalidate, max-age=0
cache-control: post-check=0, pre-check=0
content-type: text/html; charset=utf-8
date: Sat, 10 Mar 2018 17:26:28 GMT
expires: Mon, 26 Jul 1997 05:00:00 GMT
last-modified: Sat, 10 Mar 2018 17:26:28 GMT
pragma: no-cache
server: RainLoop
vary: Accept-Encoding
# docker exec traefik traefik version
Version: v1.5.3
Codename: cancoillotte
Go version: go1.9.4
Built: 2018-02-27_02:47:04PM
OS/Arch: linux/amd64
defaultEntryPoints = ["http", "https"]
debug = true
[api]
entryPoint = "traefik"
dashboard = true
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
[[entryPoints.https.tls.certificates]]
certFile = "/certs/mailserver.crt"
keyFile = "/certs/mailserver.key"
[entryPoints.traefik]
address = ":8080"
[entryPoints.traefik.auth.basic]
users = ["admin:xxxxxxxxxxxxxxx"]
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "domain.tld"
watch = true
exposedbydefault = false
# docker inspect --format "{{ index .Config.Labels }}" rainloop
map[
traefik.enable:true
traefik.backend.port:8888
traefik.frontend.headers.isDevelopment:false
traefik.frontend.rule:Host:webmail.domain.tld
traefik.frontend.headers.forceSTSHeader:false
traefik.frontend.headers.frameDeny:false
traefik.frontend.headers.STSSeconds:315360000
traefik.frontend.headers.browserXSSFilter:true
traefik.frontend.headers.contentTypeNosniff:true
com.docker.compose.config-hash:5f0c1a248be2d04def0ccc65ed4d5e8208dc6a7b26dc08c8f4e9669786003b64
com.docker.compose.container-number:1
com.docker.compose.service:rainloop
com.docker.compose.version:1.19.0
com.docker.compose.project:mailserver description:Rainloop is a simple, modern & fast web-based client
com.docker.compose.oneoff:False
maintainer=Hardware <[email protected]>
]
docker info
# docker info
Containers: 11
Running: 11
Paused: 0
Stopped: 0
Images: 129
Server Version: 18.02.0-ce
Storage Driver: devicemapper
Pool Name: docker-8:6-2502428-pool
Pool Blocksize: 65.54kB
Base Device Size: 107.4GB
Backing Filesystem: xfs
Udev Sync Supported: true
Data file: /dev/loop0
Metadata file: /dev/loop1
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Data Space Used: 4.827GB
Data Space Total: 107.4GB
Data Space Available: 15.03GB
Metadata Space Used: 6.521MB
Metadata Space Total: 2.147GB
Metadata Space Available: 2.141GB
Thin Pool Minimum Free Space: 10.74GB
Deferred Removal Enabled: true
Deferred Deletion Enabled: true
Deferred Deleted Device Count: 0
Library Version: 1.02.146 (2017-12-18)
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9b55aab90508bd389d7654c4baf173a981477d55
runc version: 9f9c96235cc97674e935002fc3d78361b696a69e
init version: 949e6fa
Security Options:
seccomp
Profile: default
Kernel Version: 4.15.6-1-ARCH
Operating System: Arch Linux
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 15.61GiB
Name: arch-desktop
ID: X6WJ:GS7Q:MM4B:IWXF:ECNZ:4KHJ:OWCA:47YM:HO2V:R65K:5FVW:FRGU
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Username: hardware
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
docker version
# docker version
Client:
Version: 18.02.0-ce
API version: 1.36
Go version: go1.9.4
Git commit: fc4de447b5
Built: Tue Feb 13 15:28:01 2018
OS/Arch: linux/amd64
Experimental: false
Orchestrator: swarm
Server:
Engine:
Version: 18.02.0-ce
API version: 1.36 (minimum version 1.12)
Go version: go1.9.4
Git commit: fc4de447b5
Built: Tue Feb 13 15:28:34 2018
OS/Arch: linux/amd64
Experimental: false
--debug switch)
logs
time="2018-03-10T17:54:23Z" level=info msg="Using TOML configuration file //traefik.toml"
time="2018-03-10T17:54:23Z" level=info msg="Traefik version v1.5.3 built on 2018-02-27_02:47:04PM"
time="2018-03-10T17:54:23Z" level=info msg="
Stats collection is disabled.
Help us improve Traefik by turning this feature on :)
More details on: https://docs.traefik.io/basics/#collected-data
"
time="2018-03-10T17:54:23Z" level=debug msg="Global configuration loaded {"LifeCycle":{"RequestAcceptGraceTimeout":"0s","GraceTimeOut":"10s"},"GraceTimeOut":"0s","Debug":true,"CheckNewVersion":true,"SendAnonymousUsage":false,"AccessLogsFile":"","AccessLog":null,"TraefikLogsFile":"","TraefikLog":null,"LogLevel":"DEBUG","EntryPoints":{"http":{"Network":"","Address":":80","TLS":null,"Redirect":{"entryPoint":"https"},"Auth":null,"WhitelistSourceRange":null,"Compress":false,"ProxyProtocol":null,"ForwardedHeaders":{"Insecure":true,"TrustedIPs":null}},"https":{"Network":"","Address":":443","TLS":{"MinVersion":"","CipherSuites":null,"Certificates":[{"CertFile":"/certs/mailserver.crt","KeyFile":"/certs/mailserver.key"}],"ClientCAFiles":null,"ClientCA":{"Files":null,"Optional":false}},"Redirect":null,"Auth":null,"WhitelistSourceRange":null,"Compress":false,"ProxyProtocol":null,"ForwardedHeaders":{"Insecure":true,"TrustedIPs":null}},"traefik":{"Network":"","Address":":8080","TLS":null,"Redirect":null,"Auth":{"Basic":{"Users":["admin:{SHA}jLIjfQZ5yojbZGTqxg2pY0VROWQ="],"UsersFile":""},"Digest":null,"Forward":null,"HeaderField":""},"WhitelistSourceRange":null,"Compress":false,"ProxyProtocol":null,"ForwardedHeaders":{"Insecure":true,"TrustedIPs":null}}},"Cluster":null,"Constraints":[],"ACME":null,"DefaultEntryPoints":["http","https"],"ProvidersThrottleDuration":"2s","MaxIdleConnsPerHost":200,"IdleTimeout":"0s","InsecureSkipVerify":false,"RootCAs":null,"Retry":null,"HealthCheck":{"Interval":"30s"},"RespondingTimeouts":null,"ForwardingTimeouts":null,"Web":null,"Docker":{"Watch":true,"Filename":"","Constraints":null,"Trace":false,"DebugLogGeneratedTemplate":false,"Endpoint":"unix:///var/run/docker.sock","Domain":"domain.tld","TLS":null,"ExposedByDefault":false,"UseBindPortIP":false,"SwarmMode":false},"File":null,"Marathon":null,"Consul":null,"ConsulCatalog":null,"Etcd":null,"Zookeeper":null,"Boltdb":null,"Kubernetes":null,"Mesos":null,"Eureka":null,"ECS":null,"Rancher":null,"DynamoDB":null,"ServiceFabric":null,"Rest":null,"API":{"EntryPoint":"traefik","Dashboard":true,"Debug":true,"CurrentConfigurations":null,"Statistics":null},"Metrics":null,"Ping":null}"
time="2018-03-10T17:54:23Z" level=info msg="Preparing server http &{Network: Address::80 TLS:<nil> Redirect:0xc4205ceab0 Auth:<nil> WhitelistSourceRange:[] Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc4202c5160} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
time="2018-03-10T17:54:23Z" level=info msg="Preparing server https &{Network: Address::443 TLS:0xc4206bb700 Redirect:<nil> Auth:<nil> WhitelistSourceRange:[] Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc4202c5180} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
time="2018-03-10T17:54:23Z" level=info msg="Starting server on :80"
time="2018-03-10T17:54:23Z" level=debug msg="Add certificate for domains *.domain.tld"
time="2018-03-10T17:54:23Z" level=info msg="Preparing server traefik &{Network: Address::8080 TLS:<nil> Redirect:<nil> Auth:0xc4205cebd0 WhitelistSourceRange:[] Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc4202c51c0} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
time="2018-03-10T17:54:23Z" level=info msg="Starting server on :443"
time="2018-03-10T17:54:23Z" level=info msg="Starting server on :8080"
time="2018-03-10T17:54:23Z" level=info msg="Starting provider *docker.Provider {"Watch":true,"Filename":"","Constraints":null,"Trace":false,"DebugLogGeneratedTemplate":false,"Endpoint":"unix:///var/run/docker.sock","Domain":"domain.tld","TLS":null,"ExposedByDefault":false,"UseBindPortIP":false,"SwarmMode":false}"
time="2018-03-10T17:54:23Z" level=debug msg="Provider connection established with docker 18.02.0-ce (API 1.36)"
time="2018-03-10T17:54:23Z" level=debug msg="Filtering disabled container /mariadb"
time="2018-03-10T17:54:23Z" level=debug msg="Filtering disabled container /mariadb-flarum"
time="2018-03-10T17:54:23Z" level=debug msg="Filtering disabled container /redis"
time="2018-03-10T17:54:23Z" level=debug msg="Filtering disabled container /autoheal"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:23Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:23Z" level=debug msg="Validation of load balancer method for backend backend-selfoss-selfoss-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:23Z" level=debug msg="Validation of load balancer method for backend backend-traefik-traefik-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:23Z" level=debug msg="Validation of load balancer method for backend backend-adminer-adminer-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:23Z" level=debug msg="Validation of load balancer method for backend backend-flarum-flarum-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:23Z" level=debug msg="Validation of load balancer method for backend backend-mailserver-mailserver-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:23Z" level=debug msg="Validation of load balancer method for backend backend-postfixadmin-postfixadmin-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:23Z" level=debug msg="Validation of load balancer method for backend backend-rainloop-rainloop-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:23Z" level=debug msg="Configuration received from provider docker: {"backends":{"backend-adminer-adminer-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.9:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-flarum-flarum-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.8:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-mailserver-mailserver-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.10:11334","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-postfixadmin-postfixadmin-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.11:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-rainloop-rainloop-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.12:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-selfoss-selfoss-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.4:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-traefik-traefik-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.7:8080","weight":0}},"loadBalancer":{"method":"wrr"}}},"frontends":{"frontend-adminer-adminer-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-adminer-adminer-mailserver-backend","routes":{"service-backend":{"rule":"Host:adminer.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-flarum-flarum-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-flarum-flarum-mailserver-backend","routes":{"service-backend":{"rule":"Host:flarum.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-mailserver-mailserver-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-mailserver-mailserver-mailserver-backend","routes":{"service-backend":{"rule":"Host:spam.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-postfixadmin-postfixadmin-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-postfixadmin-postfixadmin-mailserver-backend","routes":{"service-backend":{"rule":"Host:postfixadmin.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-rainloop-rainloop-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-rainloop-rainloop-mailserver-backend","routes":{"service-backend":{"rule":"Host:webmail.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-selfoss-selfoss-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-selfoss-selfoss-mailserver-backend","routes":{"service-backend":{"rule":"Host:selfoss.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-traefik-traefik-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-traefik-traefik-mailserver-backend","routes":{"service-backend":{"rule":"Host:mail.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]}}}"
time="2018-03-10T17:54:23Z" level=debug msg="Creating frontend frontend-adminer-adminer-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-adminer-adminer-mailserver-backend to entryPoint http"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:adminer.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating entryPoint redirect http -> https : ^(?:https?:\/\/)?([\w\._-]+)(?::\d+)?(.*)$ -> https://${1}:443${2}"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-adminer-adminer-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.9:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-adminer-adminer-mailserver-backend to entryPoint https"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:adminer.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-adminer-adminer-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.9:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Creating frontend frontend-flarum-flarum-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-flarum-flarum-mailserver-backend to entryPoint http"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:flarum.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-flarum-flarum-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.8:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-flarum-flarum-mailserver-backend to entryPoint https"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:flarum.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-flarum-flarum-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.8:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Creating frontend frontend-mailserver-mailserver-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-mailserver-mailserver-mailserver-backend to entryPoint http"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:spam.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-mailserver-mailserver-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.10:11334 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-mailserver-mailserver-mailserver-backend to entryPoint https"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:spam.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-mailserver-mailserver-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.10:11334 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Creating frontend frontend-postfixadmin-postfixadmin-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-postfixadmin-postfixadmin-mailserver-backend to entryPoint http"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:postfixadmin.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-postfixadmin-postfixadmin-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.11:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-postfixadmin-postfixadmin-mailserver-backend to entryPoint https"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:postfixadmin.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-postfixadmin-postfixadmin-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.11:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Creating frontend frontend-rainloop-rainloop-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-rainloop-rainloop-mailserver-backend to entryPoint http"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:webmail.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-rainloop-rainloop-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.12:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-rainloop-rainloop-mailserver-backend to entryPoint https"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:webmail.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-rainloop-rainloop-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.12:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Creating frontend frontend-selfoss-selfoss-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-selfoss-selfoss-mailserver-backend to entryPoint http"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:selfoss.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-selfoss-selfoss-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.4:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-selfoss-selfoss-mailserver-backend to entryPoint https"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:selfoss.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-selfoss-selfoss-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.4:8888 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Creating frontend frontend-traefik-traefik-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-traefik-traefik-mailserver-backend to entryPoint http"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:mail.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-traefik-traefik-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.7:8080 with weight 0"
time="2018-03-10T17:54:23Z" level=debug msg="Wiring frontend frontend-traefik-traefik-mailserver-backend to entryPoint https"
time="2018-03-10T17:54:23Z" level=debug msg="Creating route service-backend Host:mail.domain.tld"
time="2018-03-10T17:54:23Z" level=debug msg="Creating backend backend-traefik-traefik-mailserver-backend"
time="2018-03-10T17:54:23Z" level=debug msg="Creating load-balancer wrr"
time="2018-03-10T17:54:23Z" level=debug msg="Creating server service-0 at http://172.18.0.7:8080 with weight 0"
time="2018-03-10T17:54:23Z" level=info msg="Server configuration reloaded on :80"
time="2018-03-10T17:54:23Z" level=info msg="Server configuration reloaded on :443"
time="2018-03-10T17:54:23Z" level=info msg="Server configuration reloaded on :8080"
time="2018-03-10T17:54:24Z" level=debug msg="Provider event received {Status:health_status: healthy ID:caee2ef98b18b1ad5de5da30b00bcb8d1e08f89899db2ba2f2c827d53a0a8a70 From:willfarrell/autoheal Type:container Action:health_status: healthy Actor:{ID:caee2ef98b18b1ad5de5da30b00bcb8d1e08f89899db2ba2f2c827d53a0a8a70 Attributes:map[name:autoheal com.docker.compose.config-hash:59adb2bae5cd5d5836df5ef403c7b9da274163affb71396c72564d8b9a3dce35 com.docker.compose.container-number:1 com.docker.compose.oneoff:False com.docker.compose.project:mailserver com.docker.compose.service:autoheal com.docker.compose.version:1.19.0 image:willfarrell/autoheal]} Scope:local Time:1520704464 TimeNano:1520704464357940999}"
time="2018-03-10T17:54:24Z" level=debug msg="Filtering disabled container /mariadb"
time="2018-03-10T17:54:24Z" level=debug msg="Filtering disabled container /mariadb-flarum"
time="2018-03-10T17:54:24Z" level=debug msg="Filtering disabled container /redis"
time="2018-03-10T17:54:24Z" level=debug msg="Filtering disabled container /autoheal"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.whitelistSourceRange labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.entryPoints labels"
time="2018-03-10T17:54:24Z" level=debug msg="Could not load traefik.frontend.auth.basic labels"
time="2018-03-10T17:54:24Z" level=debug msg="Validation of load balancer method for backend backend-traefik-traefik-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:24Z" level=debug msg="Validation of load balancer method for backend backend-adminer-adminer-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:24Z" level=debug msg="Validation of load balancer method for backend backend-flarum-flarum-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:24Z" level=debug msg="Validation of load balancer method for backend backend-mailserver-mailserver-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:24Z" level=debug msg="Validation of load balancer method for backend backend-postfixadmin-postfixadmin-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:24Z" level=debug msg="Validation of load balancer method for backend backend-rainloop-rainloop-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:24Z" level=debug msg="Validation of load balancer method for backend backend-selfoss-selfoss-mailserver-backend failed: invalid load-balancing method ''. Using default method wrr."
time="2018-03-10T17:54:24Z" level=debug msg="Configuration received from provider docker: {"backends":{"backend-adminer-adminer-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.9:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-flarum-flarum-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.8:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-mailserver-mailserver-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.10:11334","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-postfixadmin-postfixadmin-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.11:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-rainloop-rainloop-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.12:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-selfoss-selfoss-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.4:8888","weight":0}},"loadBalancer":{"method":"wrr"}},"backend-traefik-traefik-mailserver-backend":{"servers":{"service-0":{"url":"http://172.18.0.7:8080","weight":0}},"loadBalancer":{"method":"wrr"}}},"frontends":{"frontend-adminer-adminer-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-adminer-adminer-mailserver-backend","routes":{"service-backend":{"rule":"Host:adminer.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-flarum-flarum-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-flarum-flarum-mailserver-backend","routes":{"service-backend":{"rule":"Host:flarum.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-mailserver-mailserver-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-mailserver-mailserver-mailserver-backend","routes":{"service-backend":{"rule":"Host:spam.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-postfixadmin-postfixadmin-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-postfixadmin-postfixadmin-mailserver-backend","routes":{"service-backend":{"rule":"Host:postfixadmin.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-rainloop-rainloop-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-rainloop-rainloop-mailserver-backend","routes":{"service-backend":{"rule":"Host:webmail.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-selfoss-selfoss-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-selfoss-selfoss-mailserver-backend","routes":{"service-backend":{"rule":"Host:selfoss.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]},"frontend-traefik-traefik-mailserver-backend":{"entryPoints":["http","https"],"backend":"backend-traefik-traefik-mailserver-backend","routes":{"service-backend":{"rule":"Host:mail.domain.tld"}},"passHostHeader":true,"priority":0,"basicAuth":[]}}}"
time="2018-03-10T17:54:24Z" level=info msg="Skipping same configuration for provider docker"
Hi and thanks for taking the time to report an issue :-)
Your problem is a bit tricky and is not (per se) a bug (though it would have worked in the next version -- I won't dive into the details here).
change
traefik.backend.port=8888
to
traefik.port=8888
The label traefik.port is the correct option to define the port Tr忙fik uses on your container (you can refer to the Traefik's documentation on labels and containers to see the full list of available options).
The syntax you used (traefik.backend.port=8888) tells Tr忙fik to create a "service" named backend which port is 8888. This syntax is useful when you need Tr忙fik to deal with containers that expose multiple ports. You can refer to the Traefik's documentation for more information about Traefik and service labels, and read the list of available options for services in Traefik's documentation on labels and services.
Feel free to join our Slack workspace for more community #support.
Enjoy Tr忙fik!
Most helpful comment
Hi and thanks for taking the time to report an issue :-)
Your problem is a bit tricky and is not (per se) a bug (though it would have worked in the next version -- I won't dive into the details here).
TL;DR
change
to
The label
traefik.portis the correct option to define the port Tr忙fik uses on your container (you can refer to the Traefik's documentation on labels and containers to see the full list of available options).More details
The syntax you used (
traefik.backend.port=8888) tells Tr忙fik to create a "service" namedbackendwhich port is8888. This syntax is useful when you need Tr忙fik to deal with containers that expose multiple ports. You can refer to the Traefik's documentation for more information about Traefik and service labels, and read the list of available options for services in Traefik's documentation on labels and services.Feel free to join our Slack workspace for more community #support.
Enjoy Tr忙fik!