Traefik

Traefik : middleware inexistant (« middleware … does not exist »)

Grave Quelque chose ne fonctionne pas : à traiter maintenant.

Le message tel qu'il apparaît dans les logs :

middleware "security-headers@file" does not exist

Ce que ça veut dire

Une application demande à passer par un middleware (redirection, en-têtes, CrowdSec…) que Traefik ne connaît pas. Toutes les requêtes vers cette application renvoient une erreur 404.

Pourquoi ça arrive

  • Le fichier qui définit le middleware (dynamic/*.yml) est absent ou a une erreur de syntaxe.
  • Faute de frappe dans le nom, ou mauvais suffixe : @file pour un fichier, @docker pour des labels.
  • Au démarrage de Traefik, ou quand ses fichiers sont réécrits (relance du script d’installation), si le message disparaît ensuite : il a lu les applications avant le fichier. Sans gravité.

Comment corriger

  1. Listez les middlewares définis :

    grep -rn "middlewares:" -A3 /opt/stacks/traefik/dynamic/
  2. Si le message est récent et se répète, corrigez le nom dans les labels de l'application ou dans le fichier dynamique, puis :

    sudo docker logs --since 5m traefik

Pour aller plus loin

Vous avez d'autres messages dans vos logs ?

Collez-les dans le décodeur : il reconnaît les erreurs connues et vous dit lesquelles sont graves. Tout reste dans votre navigateur.

Analyser mes logs