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 : les métriques avec Prometheus et OpenTelemetry
Exposer les métriques de Traefik (Prometheus ou OTLP), comprendre les séries par entrypoint, rout...
Traefik : les logs (journaux applicatifs et access logs)
Configurer les deux journaux de Traefik : le journal de fonctionnement (niveaux, format) et les a...
Traefik : le tracing distribué avec OpenTelemetry
Activer le tracing de Traefik v3 avec OpenTelemetry (OTLP), propager le contexte W3C vers les app...
Stratégies de déploiement avec Traefik : blue/green, canary et rolling
Mettre en œuvre les stratégies de déploiement avec Traefik : rolling update par l'orchestrateur, ...
Kubernetes : architecture et composants (control plane, nœuds, objets)
Comprendre l'architecture de Kubernetes : API server, etcd, scheduler, controller manager, kubele...
Maîtriser les ACLs dans HAProxy : Le Guide Complet
Guide complet sur les ACLs HAProxy : apprenez à configurer le routage intelligent, le contrôle d'...
Maîtriser les ACLs dans HAProxy
Guide complet sur les ACLs HAProxy : apprenez à configurer le routage intelligent, le contrôle d'...
Gestion des certificats SSL/TLS avec Let's Encrypt et ACME
Apprenez à automatiser la génération et le renouvellement de vos certificats SSL/TLS avec Let's E...
HAProxy comme Ingress Controller Kubernetes : Le Guide de Production
Découvrez comment utiliser HAProxy comme Ingress Controller dans Kubernetes. Architecture Direct-...