Este artículo está disponible en francés.
1. Rôle des providers #
D'où vient la configuration dynamique.
Principe #
La configuration statique (fichier traefik.yml ou arguments) dit à Traefik quels providers écouter. Les providers fournissent la configuration dynamique : routeurs, services, middlewares. Quand un conteneur démarre ou qu'un objet Kubernetes change, Traefik met ses routes à jour à chaud.
auth@docker, auth@file).2. Les providers courants #
Choisir selon la plateforme.
Tableau #
| Provider | Source | Déclaration d'une route |
|---|---|---|
| Docker | API Docker (socket) | labels traefik.http.routers… sur les conteneurs |
| Swarm | API Swarm | labels de service (deploy.labels) |
| Kubernetes CRD | API Kubernetes | IngressRoute, Middleware, TraefikService |
| Kubernetes Ingress / Gateway API | API Kubernetes | objets standards Ingress, HTTPRoute |
| Nomad, Consul Catalog, ECS | catalogue de services | tags sur les services |
| File | fichiers YAML ou TOML | configuration écrite à la main, rechargée à chaud |
| HTTP | point d'API qui renvoie du JSON | configuration générée par un outil |
| etcd, Redis, Consul KV, ZooKeeper | magasin clés-valeurs | clés traefik/http/routers/… |
3. Exemples #
Statique puis dynamique.
Configuration statique #
providers:
docker:
exposedByDefault: false # seuls les conteneurs avec traefik.enable=true sont publiés
network: web
file:
directory: /etc/traefik/dynamic
watch: true
redis:
endpoints: ["redis:6379"]Route publiée par un label Docker #
labels:
- traefik.enable=true
- traefik.http.routers.api.rule=Host(`api.exemple.fr`) && PathPrefix(`/v1`)
- traefik.http.routers.api.entrypoints=websecure
- traefik.http.routers.api.tls.certresolver=le
- traefik.http.services.api.loadbalancer.server.port=8080Erreur Courante : Monter le socket Docker donne à Traefik un accès root à l'hôte. Montez-le en lecture seule ou passez par un proxy de socket (tecnativa/docker-socket-proxy) limité aux lectures.
Bonne Pratique : exposedByDefault: false évite de publier par erreur une base de données ou un outil interne.Mi seguimiento
Inicia sesión para seguir tu progreso y tomar notas. Iniciar sesión
Artículos recomendados
Traefik : vue d'ensemble, architecture et premier déploiement
Découvrir Traefik : reverse proxy et load balancer cloud-native, entrypoints, routers, services, ...
Traefik comme Ingress Controller pour Kubernetes (Helm, IngressRoute, Gateway API)
Installer Traefik dans Kubernetes avec Helm et publier des applications avec Ingress, les CRD Ing...
Les plugins Traefik : l'exemple de CrowdSec pour bloquer les attaques
Étendre Traefik avec des plugins (catalogue officiel, interpréteur Yaegi), puis protéger ses appl...
Traefik : sécuriser et transformer les requêtes avec les middlewares (BasicAuth, ForwardAuth…)
Les middlewares Traefik modifient les requêtes et réponses entre le routeur et le service : authe...
HAProxy dans Kubernetes : L'Ingress Controller Haute Performance
Découvrez en profondeur l'intégration de HAProxy dans Kubernetes. Architecture Direct-to-Pod, opt...
Canary automatisé avec Flagger et Traefik sur Kubernetes
Automatiser les déploiements canary avec Flagger et Traefik : ressource Canary, analyse des métri...
Protocole ACME : serveur ACME, challenges http-01 et dns-01, automatisation TLS
Comprendre le protocole ACME : rôle du serveur ACME (Let's Encrypt, ZeroSSL, step-ca), challenges...
L'API de Traefik : inspecter la configuration et sécuriser le tableau de bord
Utiliser l'API REST de Traefik pour inspecter routeurs, services, middlewares et entrypoints, l'e...
Bonnes pratiques Traefik : sécurité, haute disponibilité et observabilité
Bonnes pratiques Traefik : sécurisation du dashboard et du socket Docker, TLS moderne, middleware...