@
martinvdm Tip: Gebruik de file optie. Zal m
orgenochtend ff posten hoe ik HA via Traefik heb. Met network_mode: host
@
martinvdm Ok, bij deze (een deel van) mijn Traefik configuratie.
Maak in je traefik folder waar o.a. de acme.json en traefik.toml bestanden staan een map. Ik heb hem
rules genoemd. Hierin maak ik per website die ik wel redirecten een bestand aan, waardoor de configuratie in mijn ogen een stuk overzichtelijker blijft.
Vergeet deze folder niet te mappen als volume in je Docker container. Ik ben ooit 2 uur aan het klooien geweest waarom die bestanden nou niet gezien werden
docker-compose.yml
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| version: '3.7'
services:
traefik:
container_name: traefik
image: traefik:latest
restart: always
ports:
- 80:80
- 443:443
networks:
- traefik
volumes:
- ./traefik.toml:/traefik.toml:ro
- ./acme.json:/acme.json
- ./rules:/rules:ro
- ./.htpasswd:/.htpasswd:ro
- /var/run/docker.sock:/var/run/docker.sock
labels:
- traefik.frontend.rule=Host:traefik.mijndomein.nl
- traefik.port=8087
- traefik.enable=true
networks:
traefik:
external: true |
treaefik.toml
TOML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
| logLevel = "warn"
defaultEntryPoints = ["http", "https"]
InsecureSkipVerify = true
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
minVersion = "VersionTLS12"
cipherSuites = [ "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305", "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" ]
[entryPoints.traefik]
address = ":8087"
[entryPoints.traefik.auth.basic]
usersFile=".htpasswd"
[api]
entryPoint = "traefik"
dashboard = true
debug = false
[file]
directory = "./rules"
watch = true
[docker]
exposedByDefault = false
domain = "mijndomein.nl"
watch = true
[acme]
acmeLogging = true
email = "ste....@outlook.com"
storage = "acme.json"
entryPoint = "https"
OnHostRule = true
onDemand = false
#caServer = "https://acme-staging.api.letsencrypt.org/directory"
#
[acme.httpChallenge]
entryPoint = "http" |
Vervolgens maak je in de rules folder een bestand, maakt niet uit hoe je hem noemt. Dit bestand wordt automatisch opgemerkt door Traefik, dus een herstart van Traefik is niet nodig. Ik heb bijvoorbeeld onder andere 'hass.toml', met daarin het volgende:
TOML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| [frontends]
[frontends.hass]
backend = "hass"
[frontends.hass.routes.hass]
rule = "Host:hass.mijndomein.nl"
passHostHeader = true
passTLSCert = true
priority = 10
entrypoints = ["https"]
[backends]
[backends.hass]
[backends.hass.servers.server1]
url = "http://192.168.4.50:8123"
weight = 1 |
Zodra je dat bestand opslaat krijg je in Traefik een extra tab. Als je die opent zie je de redirects die actief zijn door de .toml bestanden in de rules-map.
[
Voor 96% gewijzigd door
lolgast op 16-08-2018 07:59
]