Aller au contenu principal

Traefik — Reverse proxy / ingress

Traefik est un reverse proxy moderne conçu pour les environnements dynamiques (Docker, Kubernetes) : il découvre automatiquement les services via des providers (Docker labels, fichiers, Kubernetes Ingress/CRD) et met à jour son routage sans redémarrage.

Installation

# Binaire
curl -L https://github.com/traefik/traefik/releases/latest/download/traefik_linux_amd64.tar.gz | tar xz
sudo mv traefik /usr/local/bin/

# Ou conteneur (usage le plus courant)
docker run -d -p 80:80 -p 8080:8080 \
-v /var/run/docker.sock:/var/run/docker.sock \
traefik:v3 --api.insecure=true --providers.docker

Fichiers de configuration

CheminRôle
traefik.yml / traefik.tomlConfiguration statique (entrypoints, providers, certificats)
dynamic.ymlConfiguration dynamique (routers, middlewares) si provider fichier
Labels Docker (traefik.http.routers.*)Configuration dynamique quand le provider Docker est utilisé

Commandes utiles

traefik version
docker logs -f traefik # si lancé en conteneur
curl localhost:8080/api/rawdata # dashboard API (si activé)

Exemple de configuration (labels Docker)

services:
app:
image: mon-app
labels:
- "traefik.enable=true"
- "traefik.http.routers.app.rule=Host(`app.exemple.fr`)"
- "traefik.http.routers.app.tls.certresolver=letsencrypt"

Sécurisation

  • Ne jamais exposer --api.insecure=true en production — protéger le dashboard par une authentification ou le désactiver.
  • Limiter l'accès au socket Docker (/var/run/docker.sock) monté en lecture seule quand c'est possible, ou passer par un proxy socket restreint (ex: docker-socket-proxy).
  • Activer les middlewares de sécurité (rate limiting, headers, IP whitelist) par router.
  • Let's Encrypt intégré (certresolver) pour automatiser le renouvellement TLS.

Logs & dépannage

docker logs -f traefik
# Ou en systemd :
journalctl -u traefik -f

Le dashboard (--api.dashboard=true, port 8080 par défaut) donne une vue en temps réel des routers/services détectés — premier réflexe de dépannage pour vérifier qu'un service est bien découvert.

Voir aussi

  • nginx et haproxy — alternatives reverse proxy plus statiques
  • Docker — provider le plus courant pour Traefik