Depuis la version 2.5 de Traefik, vous pouvez désormais mettre en place/utiliser le protocole HTTP/3 (QUIC). Retenez toutefois qu'il s'agit encore d'une version au stade expérimentale pour Traefik, que des instabilités sont à prévoir.
Version | Date | Commentaires |
---|---|---|
1 | 05/2022 | Création de l'article |
Objectif : Permettre Ă Traefik d'Ă©couter/rĂ©pondre aux requĂȘtes HTTP/3 (QUIC)
Environnement : Debian 11.7
, Docker 23.x
, docker compose (plugin) 2.17.x
, Traefik 2.10
.
Contexte d'exécution :
jho@vmi866042:/srv/docker/dc$ tree
.
âââ conf
â  âââ acme.json
â  âââ traefik.yml
â  âââ traefikdynamic
â  â  âââ general.yml
â  â  âââ routersservices.yml
âââ docker-compose.yml
âââ logs
âââ traefikAccess.log
âââ traefik.log
Principes et prérequis
HTTP/3 est un nouveau protocole standardisĂ© visant Ă amĂ©liorer la vitesse de navigation sur le web. Sans rentrer dans de nombreux dĂ©tails, HTTP/3 est un protocole de transport pour distribuer des requĂȘtes HTTP plus rapidement qu'avec HTTP/2 (TCP), notamment en utilisant l'UDP.

Pour plus d'informations, je vous suggĂšre ces sites :
Configuration de Traefik
Avant de vous lancer dans la configuration du HTTP/3, sachez qu'il n'est pas possible de faire Ă©couter Traefik sur un port UDP ayant le mĂȘme numĂ©ro de port qu'un port TCP. De plus, l'entrypoint utilisĂ© pour HTTP/3 doit ĂȘtre celui avec lequel vous avez activĂ© la partie TLS pour vos routeurs.
La configuration est assez simple dans l'ensemble : ajoutez le bloc "experimental" et modifier l'entrypoint servant le HTTPS :
experimental:
http3: true
entryPoints:
web:
address: ":80"
http:
redirections:
entryPoint:
to: websecure
scheme: https
websecure:
address: ":443"
http3:
advertisedPort: "443"
Vous devez redémarrer Traefik pour valider les changements. Avec cette configuration, tous vos routeurs configurés avec l'entrypoint "websecure" (selon l'exemple) seront accessibles en HTTP/2 et HTTP/3.
Pour tester, vous pouvez utiliser l'outil disponible chez Geekflare :
