Enable traefik metrics
This commit is contained in:
parent
570d35d2e3
commit
ab91c27655
|
@ -20,14 +20,24 @@ Si on lance plein de conteneurs de tests, on utilisera temporairement [l'environ
|
||||||
|
|
||||||
### Lancement
|
### Lancement
|
||||||
|
|
||||||
|
#### Certs
|
||||||
|
|
||||||
Au premier lancement, assurez-vous que :
|
Au premier lancement, assurez-vous que :
|
||||||
* Le dossier `/DATA/docker/traefik/certs` existe
|
|
||||||
* Créez un fichier `acme.json` à l'intérieur
|
- Le dossier `/DATA/docker/traefik/certs` existe
|
||||||
* Changez son propriétaire à `root`
|
- Créez un fichier `acme.json` à l'intérieur
|
||||||
* Changez ses permissions à `600`
|
- Changez son propriétaire à `root`
|
||||||
|
- Changez ses permissions à `600`
|
||||||
|
|
||||||
C'est dans ce fichier que seront conservés tous les certificats générés par Traefik.
|
C'est dans ce fichier que seront conservés tous les certificats générés par Traefik.
|
||||||
|
|
||||||
|
#### Métriques
|
||||||
|
|
||||||
|
Pour le bon fonctionnement des métriques, il faut aussi créer un fichier `.env` (dans le même dossier que le Docker Compose) qui devra contenir 2 variables :
|
||||||
|
|
||||||
|
- `SERVER_NAME` qui correspond au nom du serveur, par exemple `SERVER_NAME=pica01-test.picasoft.net`
|
||||||
|
- `METRICS_AUTH` qui correspond à la chaîne d'identification htpasswd utilisée pour authentifier sur l'endpoint des métriques, par exemple `METRICS_AUTH="traefik:$apr1$bXnknJ0S$GsC.ozNJc/dAkh9uH7Qlg."`
|
||||||
|
|
||||||
### Mise à jour
|
### Mise à jour
|
||||||
|
|
||||||
Il suffit de mettre à jour le tag de l'image dans Compose.
|
Il suffit de mettre à jour le tag de l'image dans Compose.
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
version: '3.7'
|
version: "3.7"
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
proxy:
|
proxy:
|
||||||
name: 'proxy'
|
name: "proxy"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
|
@ -17,6 +17,14 @@ services:
|
||||||
- ./traefik.toml:/traefik.toml
|
- ./traefik.toml:/traefik.toml
|
||||||
- ./traefik_dynamic.toml:/traefik_dynamic.toml
|
- ./traefik_dynamic.toml:/traefik_dynamic.toml
|
||||||
- /DATA/docker/traefik/certs:/certs
|
- /DATA/docker/traefik/certs:/certs
|
||||||
|
labels:
|
||||||
|
traefik.http.routers.traefik-metrics.entrypoints: websecure
|
||||||
|
traefik.http.routers.traefik-metrics.rule: "Host(`${SERVER_NAME}`) && PathPrefix(`/metrics`)"
|
||||||
|
traefik.http.routers.traefik-metrics.service: traefik-metrics
|
||||||
|
traefik.http.routers.traefik-metrics.middlewares: "traefik-metrics-auth@docker"
|
||||||
|
traefik.http.middlewares.traefik-metrics-auth.basicauth.users: "${METRICS_AUTH}"
|
||||||
|
traefik.http.services.traefik-metrics.loadbalancer.server.port: 8082
|
||||||
|
traefik.enable: true
|
||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
|
@ -15,7 +15,8 @@
|
||||||
[entryPoints.websecure.http.tls]
|
[entryPoints.websecure.http.tls]
|
||||||
certResolver = "letsencrypt"
|
certResolver = "letsencrypt"
|
||||||
options = "tls12@file"
|
options = "tls12@file"
|
||||||
|
[entryPoints.metrics]
|
||||||
|
address = ":8082"
|
||||||
|
|
||||||
[providers]
|
[providers]
|
||||||
providersThrottleDuration = "2s"
|
providersThrottleDuration = "2s"
|
||||||
|
@ -40,3 +41,7 @@
|
||||||
storage = "/certs/acme.json"
|
storage = "/certs/acme.json"
|
||||||
[certificatesResolvers.letsencrypt.acme.httpChallenge]
|
[certificatesResolvers.letsencrypt.acme.httpChallenge]
|
||||||
entryPoint = "web"
|
entryPoint = "web"
|
||||||
|
|
||||||
|
[metrics]
|
||||||
|
[metrics.prometheus]
|
||||||
|
entryPoint = "metrics"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user