{"id":2156,"date":"2026-03-31T08:58:03","date_gmt":"2026-03-31T06:58:03","guid":{"rendered":"https:\/\/askem.eu\/?p=2156"},"modified":"2026-03-31T08:58:09","modified_gmt":"2026-03-31T06:58:09","slug":"traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker","status":"publish","type":"post","link":"https:\/\/askem.eu\/en\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/","title":{"rendered":"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker"},"content":{"rendered":"<h1 class=\"wp-block-heading\">Traefik v3&nbsp;: reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker<\/h1>\n\n\n\n<p>Nginx est un reverse proxy \u00e9prouv\u00e9, mais dans une stack Docker multi-conteneurs qui \u00e9volue souvent, sa configuration statique devient vite fastidieuse&nbsp;: chaque nouveau service n\u00e9cessite de modifier un fichier, de recharger le d\u00e9mon, de g\u00e9rer manuellement les certificats TLS. Traefik adopte une philosophie inverse&nbsp;: il observe les labels des conteneurs Docker pour configurer ses routes dynamiquement, renouvelle les certificats Let&rsquo;s Encrypt automatiquement, et expose un tableau de bord en temps r\u00e9el. Traefik v3, sorti en 2024, apporte des am\u00e9liorations significatives pour les environnements Kubernetes et Docker modernes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pourquoi Traefik plut\u00f4t que Nginx dans une stack auto-h\u00e9berg\u00e9e&nbsp;?<\/h2>\n\n\n\n<p>La diff\u00e9rence fondamentale est le mod\u00e8le de configuration. Nginx est un fichier statique qu&rsquo;on recharge, donc chaque changement n\u00e9cessite une intervention. Traefik interroge en continu le socket Docker (ou l&rsquo;API Kubernetes) et reconfigure ses routes \u00e0 chaud d\u00e8s qu&rsquo;un conteneur d\u00e9marre ou s&rsquo;arr\u00eate. Dans une infrastructure compos\u00e9e d&rsquo;une dizaine de services (CKAN, Keycloak, Nextcloud, Superset, Gitea, MinIO\u2026), cela change la maintenance en profondeur.<\/p>\n\n\n\n<p>L&rsquo;autre avantage d\u00e9cisif est la gestion TLS native. Traefik int\u00e8gre le client ACME (Let&rsquo;s Encrypt \/ ZeroSSL) et renouvelle les certificats de chaque service automatiquement, sans cron, sans certbot externe. Il supporte les challenges HTTP-01 et DNS-01, ce qui permet de certifier des services non expos\u00e9s publiquement en utilisant l&rsquo;API DNS.<\/p>\n\n\n\n<p>En contrepartie, Nginx reste plus adapt\u00e9 pour les configurations tr\u00e8s sp\u00e9cifiques (r\u00e9\u00e9criture complexe d&rsquo;URL, cache de proxy, gestion fine des headers HTTP) et offre de meilleures performances brutes en tant que serveur de fichiers statiques. Les deux outils ne sont pas exclusifs, une architecture courante place Traefik devant pour la terminaison TLS et la distribution vers les services, avec Nginx utilis\u00e9 \u00e0 l&rsquo;int\u00e9rieur de certains services pour leurs besoins propres.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Architecture de Traefik v3<\/h2>\n\n\n\n<p>Traefik s&rsquo;articule autour de trois concepts centraux. Les <strong>entrypoints<\/strong> sont les ports d&rsquo;\u00e9coute d\u00e9clar\u00e9s dans la configuration statique (port 80 HTTP, 443 HTTPS, 8080 dashboard). Les <strong>routers<\/strong> d\u00e9finissent les r\u00e8gles de correspondance entre une requ\u00eate entrante et un service backend, typiquement bas\u00e9es sur le hostname ou le chemin URL. Les <strong>services<\/strong> d\u00e9signent les groupes de conteneurs qui traitent les requ\u00eates, avec \u00e9quilibrage de charge int\u00e9gr\u00e9. Entre les routers et les services, des <strong>middlewares<\/strong> permettent d&rsquo;appliquer des transformations&nbsp;: redirection HTTPS, authentification basique, rate limiting, ajout de headers de s\u00e9curit\u00e9.<\/p>\n\n\n\n<p>Avec Docker, toute cette configuration se d\u00e9clare par des labels sur les conteneurs, sans toucher au fichier de configuration central de Traefik. C&rsquo;est l&rsquo;inversion de contr\u00f4le&nbsp;: c&rsquo;est le service qui se d\u00e9clare aupr\u00e8s du proxy, et non l&rsquo;administrateur qui configure le proxy pour chaque service.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9ploiement avec Docker Compose<\/h2>\n\n\n\n<p>La configuration statique de Traefik est minimale. On cr\u00e9e un fichier <code>traefik.yml<\/code> et un <code>docker-compose.yml<\/code>&nbsp;:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># traefik.yml \u2014 configuration statique\napi:\n  dashboard: true\n  insecure: false\n\nentryPoints:\n  web:\n    address: \":80\"\n    http:\n      redirections:\n        entryPoint:\n          to: websecure\n          scheme: https\n  websecure:\n    address: \":443\"\n\nproviders:\n  docker:\n    exposedByDefault: false\n    network: traefik-public\n\ncertificatesResolvers:\n  letsencrypt:\n    acme:\n      email: admin@example.com\n      storage: \/letsencrypt\/acme.json\n      httpChallenge:\n        entryPoint: web<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code># docker-compose.yml \u2014 Traefik v3\nservices:\n  traefik:\n    image: traefik:v3\n    restart: unless-stopped\n    ports:\n      - \"80:80\"\n      - \"443:443\"\n    volumes:\n      - \/var\/run\/docker.sock:\/var\/run\/docker.sock:ro\n      - .\/traefik.yml:\/traefik.yml:ro\n      - traefik-certs:\/letsencrypt\n    networks:\n      - traefik-public\n    labels:\n      - \"traefik.enable=true\"\n      - \"traefik.http.routers.dashboard.rule=Host(`traefik.example.com`)\"\n      - \"traefik.http.routers.dashboard.entrypoints=websecure\"\n      - \"traefik.http.routers.dashboard.tls.certresolver=letsencrypt\"\n      - \"traefik.http.routers.dashboard.service=api@internal\"\n      - \"traefik.http.routers.dashboard.middlewares=auth\"\n      - \"traefik.http.middlewares.auth.basicauth.users=admin:$$apr1$$...\"\n\nnetworks:\n  traefik-public:\n    external: true\n\nvolumes:\n  traefik-certs:<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Exposer un service derri\u00e8re Traefik<\/h2>\n\n\n\n<p>Pour qu&rsquo;un service soit automatiquement pris en charge par Traefik, il suffit de lui ajouter les bons labels dans son propre <code>docker-compose.yml<\/code>. Exemple avec CKAN&nbsp;:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>services:\n  ckan:\n    image: ckan\/ckan-base:2.10\n    networks:\n      - traefik-public\n      - internal\n    labels:\n      - \"traefik.enable=true\"\n      - \"traefik.http.routers.ckan.rule=Host(`data.example.com`)\"\n      - \"traefik.http.routers.ckan.entrypoints=websecure\"\n      - \"traefik.http.routers.ckan.tls.certresolver=letsencrypt\"\n      - \"traefik.http.services.ckan.loadbalancer.server.port=5000\"\n\nnetworks:\n  traefik-public:\n    external: true\n  internal:<\/code><\/pre>\n\n\n\n<p>Traefik d\u00e9tecte ce conteneur au d\u00e9marrage, cr\u00e9e le routeur, obtient le certificat TLS pour <code>data.example.com<\/code>, et commence \u00e0 router le trafic, sans toucher \u00e0 la configuration centrale et sans recharger quoi que ce soit.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Middlewares essentiels en production<\/h2>\n\n\n\n<p>Les middlewares sont appliqu\u00e9s dans la cha\u00eene entre le routeur et le service. Quelques exemples utiles en production&nbsp;:<\/p>\n\n\n\n<p><strong>Headers de s\u00e9curit\u00e9<\/strong> \u2014 Ajouter automatiquement les en-t\u00eates HSTS, Content-Security-Policy et X-Frame-Options \u00e0 toutes les r\u00e9ponses d&rsquo;un service&nbsp;:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>- \"traefik.http.middlewares.secure-headers.headers.stsSeconds=31536000\"\n- \"traefik.http.middlewares.secure-headers.headers.stsIncludeSubdomains=true\"\n- \"traefik.http.middlewares.secure-headers.headers.frameDeny=true\"\n- \"traefik.http.middlewares.secure-headers.headers.contentTypeNosniff=true\"<\/code><\/pre>\n\n\n\n<p><strong>Rate limiting<\/strong>&nbsp;: Limiter le nombre de requ\u00eates par IP pour prot\u00e9ger une API ou un formulaire de connexion&nbsp;:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>- \"traefik.http.middlewares.ratelimit.ratelimit.average=100\"\n- \"traefik.http.middlewares.ratelimit.ratelimit.burst=50\"<\/code><\/pre>\n\n\n\n<p><strong>Forward Auth<\/strong>&nbsp;: D\u00e9l\u00e9guer l&rsquo;authentification \u00e0 un service externe, typiquement Keycloak ou Authelia, avant de laisser passer la requ\u00eate vers le service final&nbsp;:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>- \"traefik.http.middlewares.keycloak-auth.forwardauth.address=https:\/\/auth.example.com\/verify\"\n- \"traefik.http.middlewares.keycloak-auth.forwardauth.trustForwardHeader=true\"<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Nouveaut\u00e9s de Traefik v3<\/h2>\n\n\n\n<p>Traefik v3 (disponible depuis avril 2024) introduit plusieurs changements importants. Le support natif de HTTP\/3 (QUIC) est activable par entrypoint. La syntaxe des r\u00e8gles de routage gagne un op\u00e9rateur <code>&amp;&amp;<\/code> pour combiner des conditions sur le hostname et le chemin. Le support des <em>plugins WASM<\/em> permet d&rsquo;\u00e9crire des middlewares personnalis\u00e9s dans n&rsquo;importe quel langage compilable en WebAssembly, sans fork du binaire. C\u00f4t\u00e9 Kubernetes, le provider CRD est stabilis\u00e9 avec un support am\u00e9lior\u00e9 des IngressRoutes TCP et UDP.<\/p>\n\n\n\n<p>La migration depuis v2 est document\u00e9e et g\u00e9n\u00e9ralement sans friction pour les configurations Docker, les labels restent identiques. Les changements notables concernent principalement la gestion des plugins et quelques renommages dans la configuration statique.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Traefik dans une architecture compl\u00e8te<\/h2>\n\n\n\n<p>Dans une stack auto-h\u00e9berg\u00e9e typique, Traefik occupe la position de point d&rsquo;entr\u00e9e unique&nbsp;: un seul conteneur \u00e9coute sur les ports 80 et 443, distribue le trafic vers CKAN, Keycloak, Nextcloud, Superset, Gitea et MinIO en fonction du hostname. Chaque service dispose de son propre certificat TLS g\u00e9n\u00e9r\u00e9 automatiquement. Le tableau de bord Traefik (lui-m\u00eame prot\u00e9g\u00e9 par Basic Auth ou ForwardAuth) donne une vue en temps r\u00e9el des routes actives, de l&rsquo;\u00e9tat des certificats, et des erreurs \u00e9ventuelles.<\/p>\n\n\n\n<p>Cette architecture centralise la s\u00e9curit\u00e9 (TLS, headers, rate limiting) au niveau du proxy tout en laissant \u00e0 chaque \u00e9quipe ou service la responsabilit\u00e9 de d\u00e9clarer ses propres labels, une r\u00e9partition des responsabilit\u00e9s coh\u00e9rente avec les principes DevOps modernes.<\/p>","protected":false},"excerpt":{"rendered":"<p>Traefik v3&nbsp;: reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker Nginx est un reverse proxy \u00e9prouv\u00e9, mais dans une stack Docker multi-conteneurs qui \u00e9volue souvent, sa configuration statique devient vite fastidieuse&nbsp;: chaque nouveau service n\u00e9cessite de modifier un fichier, de recharger le d\u00e9mon, de g\u00e9rer manuellement les certificats TLS. Traefik adopte une [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2157,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ocean_post_layout":"","ocean_both_sidebars_style":"","ocean_both_sidebars_content_width":0,"ocean_both_sidebars_sidebars_width":0,"ocean_sidebar":"","ocean_second_sidebar":"","ocean_disable_margins":"enable","ocean_add_body_class":"","ocean_shortcode_before_top_bar":"","ocean_shortcode_after_top_bar":"","ocean_shortcode_before_header":"","ocean_shortcode_after_header":"","ocean_has_shortcode":"","ocean_shortcode_after_title":"","ocean_shortcode_before_footer_widgets":"","ocean_shortcode_after_footer_widgets":"","ocean_shortcode_before_footer_bottom":"","ocean_shortcode_after_footer_bottom":"","ocean_display_top_bar":"default","ocean_display_header":"default","ocean_header_style":"","ocean_center_header_left_menu":"","ocean_custom_header_template":"","ocean_custom_logo":0,"ocean_custom_retina_logo":0,"ocean_custom_logo_max_width":0,"ocean_custom_logo_tablet_max_width":0,"ocean_custom_logo_mobile_max_width":0,"ocean_custom_logo_max_height":0,"ocean_custom_logo_tablet_max_height":0,"ocean_custom_logo_mobile_max_height":0,"ocean_header_custom_menu":"","ocean_menu_typo_font_family":"","ocean_menu_typo_font_subset":"","ocean_menu_typo_font_size":0,"ocean_menu_typo_font_size_tablet":0,"ocean_menu_typo_font_size_mobile":0,"ocean_menu_typo_font_size_unit":"px","ocean_menu_typo_font_weight":"","ocean_menu_typo_font_weight_tablet":"","ocean_menu_typo_font_weight_mobile":"","ocean_menu_typo_transform":"","ocean_menu_typo_transform_tablet":"","ocean_menu_typo_transform_mobile":"","ocean_menu_typo_line_height":0,"ocean_menu_typo_line_height_tablet":0,"ocean_menu_typo_line_height_mobile":0,"ocean_menu_typo_line_height_unit":"","ocean_menu_typo_spacing":0,"ocean_menu_typo_spacing_tablet":0,"ocean_menu_typo_spacing_mobile":0,"ocean_menu_typo_spacing_unit":"","ocean_menu_link_color":"","ocean_menu_link_color_hover":"","ocean_menu_link_color_active":"","ocean_menu_link_background":"","ocean_menu_link_hover_background":"","ocean_menu_link_active_background":"","ocean_menu_social_links_bg":"","ocean_menu_social_hover_links_bg":"","ocean_menu_social_links_color":"","ocean_menu_social_hover_links_color":"","ocean_disable_title":"default","ocean_disable_heading":"default","ocean_post_title":"","ocean_post_subheading":"","ocean_post_title_style":"","ocean_post_title_background_color":"","ocean_post_title_background":0,"ocean_post_title_bg_image_position":"","ocean_post_title_bg_image_attachment":"","ocean_post_title_bg_image_repeat":"","ocean_post_title_bg_image_size":"","ocean_post_title_height":0,"ocean_post_title_bg_overlay":0.5,"ocean_post_title_bg_overlay_color":"","ocean_disable_breadcrumbs":"default","ocean_breadcrumbs_color":"","ocean_breadcrumbs_separator_color":"","ocean_breadcrumbs_links_color":"","ocean_breadcrumbs_links_hover_color":"","ocean_display_footer_widgets":"default","ocean_display_footer_bottom":"default","ocean_custom_footer_template":"","osh_disable_topbar_sticky":"default","osh_disable_header_sticky":"default","osh_sticky_header_style":"default","osh_sticky_header_effect":"","osh_custom_sticky_logo":0,"osh_custom_retina_sticky_logo":0,"osh_custom_sticky_logo_height":0,"osh_background_color":"","osh_links_color":"","osh_links_hover_color":"","osh_links_active_color":"","osh_links_bg_color":"","osh_links_hover_bg_color":"","osh_links_active_bg_color":"","osh_menu_social_links_color":"","osh_menu_social_hover_links_color":"","ocean_post_oembed":"","ocean_post_self_hosted_media":"","ocean_post_video_embed":"","ocean_link_format":"","ocean_link_format_target":"self","ocean_quote_format":"","ocean_quote_format_link":"post","ocean_gallery_link_images":"on","ocean_gallery_id":[],"footnotes":""},"categories":[18],"tags":[],"class_list":["post-2156","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops","entry","has-media"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker - askem<\/title>\n<meta name=\"description\" content=\"ASKEM BUREAU D&#039;\u00c9TUDES ET DE FORMATION NUM\u00c9RIQUE. Nous vous assistons dans la transformation num\u00e9rique de vos outils, services et organisations tout en pla\u00e7ant l\u2019humain au c\u0153ur de notre d\u00e9marche d\u2019accompagnement.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/askem.eu\/en\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker - askem\" \/>\n<meta property=\"og:description\" content=\"ASKEM BUREAU D&#039;\u00c9TUDES ET DE FORMATION NUM\u00c9RIQUE. Nous vous assistons dans la transformation num\u00e9rique de vos outils, services et organisations tout en pla\u00e7ant l\u2019humain au c\u0153ur de notre d\u00e9marche d\u2019accompagnement.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/askem.eu\/en\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/\" \/>\n<meta property=\"og:site_name\" content=\"askem\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/fb.me\/askem.eu\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-31T06:58:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-31T06:58:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2026\/03\/sujet-askem-2026-03-31.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1517\" \/>\n\t<meta property=\"og:image:height\" content=\"1067\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"askemadmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"askemadmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/\"},\"author\":{\"name\":\"askemadmin\",\"@id\":\"https:\\\/\\\/askem.eu\\\/#\\\/schema\\\/person\\\/8bbee74ab9a977d56bf4826662e9d2e9\"},\"headline\":\"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker\",\"datePublished\":\"2026-03-31T06:58:03+00:00\",\"dateModified\":\"2026-03-31T06:58:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/\"},\"wordCount\":922,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/askem.eu\\/wp-content\\/uploads\\/2026\\/03\\/sujet-askem-2026-03-31.png\",\"articleSection\":[\"devops\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/\",\"url\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/\",\"name\":\"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker - askem\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/askem.eu\\/wp-content\\/uploads\\/2026\\/03\\/sujet-askem-2026-03-31.png\",\"datePublished\":\"2026-03-31T06:58:03+00:00\",\"dateModified\":\"2026-03-31T06:58:09+00:00\",\"description\":\"ASKEM BUREAU D'\u00c9TUDES ET DE FORMATION NUM\u00c9RIQUE. Nous vous assistons dans la transformation num\u00e9rique de vos outils, services et organisations tout en pla\u00e7ant l\u2019humain au c\u0153ur de notre d\u00e9marche d\u2019accompagnement.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#primaryimage\",\"url\":\"https:\\/\\/askem.eu\\/wp-content\\/uploads\\/2026\\/03\\/sujet-askem-2026-03-31.png\",\"contentUrl\":\"https:\\/\\/askem.eu\\/wp-content\\/uploads\\/2026\\/03\\/sujet-askem-2026-03-31.png\",\"width\":1517,\"height\":1067},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/askem.eu\\\/2026\\\/03\\\/31\\\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/askem.eu\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/askem.eu\\\/#website\",\"url\":\"https:\\\/\\\/askem.eu\\\/\",\"name\":\"askem\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/askem.eu\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/askem.eu\\\/#organization\",\"name\":\"Askem\",\"url\":\"https:\\\/\\\/askem.eu\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/askem.eu\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\/\\/mlpi0fxo3sth.i.optimole.com\\/cb:3obA.c61\\/w:760\\/h:480\\/q:mauto\\/f:best\\/https:\\/\\/askem.eu\\/wp-content\\/uploads\\/2020\\/10\\/logoGalaxieAskem3.png\",\"contentUrl\":\"https:\\/\\/mlpi0fxo3sth.i.optimole.com\\/cb:3obA.c61\\/w:760\\/h:480\\/q:mauto\\/f:best\\/https:\\/\\/askem.eu\\/wp-content\\/uploads\\/2020\\/10\\/logoGalaxieAskem3.png\",\"width\":760,\"height\":480,\"caption\":\"Askem\"},\"image\":{\"@id\":\"https:\\\/\\\/askem.eu\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/fb.me\\\/askem.eu\",\"https:\\\/\\\/linkedin.com\\\/company\\\/askem-eu\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/askem.eu\\\/#\\\/schema\\\/person\\\/8bbee74ab9a977d56bf4826662e9d2e9\",\"name\":\"askemadmin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a202f744ee3a4b6fdbe2ceb57fd84c72559337791a276662270d8d2fb7842e3f?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a202f744ee3a4b6fdbe2ceb57fd84c72559337791a276662270d8d2fb7842e3f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a202f744ee3a4b6fdbe2ceb57fd84c72559337791a276662270d8d2fb7842e3f?s=96&d=mm&r=g\",\"caption\":\"askemadmin\"},\"sameAs\":[\"https:\\\/\\\/askem.eu\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker - askem","description":"ASKEM BUREAU D'\u00c9TUDES ET DE FORMATION NUM\u00c9RIQUE. Nous vous assistons dans la transformation num\u00e9rique de vos outils, services et organisations tout en pla\u00e7ant l\u2019humain au c\u0153ur de notre d\u00e9marche d\u2019accompagnement.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/askem.eu\/en\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/","og_locale":"en_US","og_type":"article","og_title":"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker - askem","og_description":"ASKEM BUREAU D'\u00c9TUDES ET DE FORMATION NUM\u00c9RIQUE. Nous vous assistons dans la transformation num\u00e9rique de vos outils, services et organisations tout en pla\u00e7ant l\u2019humain au c\u0153ur de notre d\u00e9marche d\u2019accompagnement.","og_url":"https:\/\/askem.eu\/en\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/","og_site_name":"askem","article_publisher":"https:\/\/fb.me\/askem.eu","article_published_time":"2026-03-31T06:58:03+00:00","article_modified_time":"2026-03-31T06:58:09+00:00","og_image":[{"width":1517,"height":1067,"url":"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2026\/03\/sujet-askem-2026-03-31.png","type":"image\/png"}],"author":"askemadmin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"askemadmin","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#article","isPartOf":{"@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/"},"author":{"name":"askemadmin","@id":"https:\/\/askem.eu\/#\/schema\/person\/8bbee74ab9a977d56bf4826662e9d2e9"},"headline":"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker","datePublished":"2026-03-31T06:58:03+00:00","dateModified":"2026-03-31T06:58:09+00:00","mainEntityOfPage":{"@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/"},"wordCount":922,"commentCount":0,"publisher":{"@id":"https:\/\/askem.eu\/#organization"},"image":{"@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#primaryimage"},"thumbnailUrl":"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2026\/03\/sujet-askem-2026-03-31.png","articleSection":["devops"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/","url":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/","name":"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker - askem","isPartOf":{"@id":"https:\/\/askem.eu\/#website"},"primaryImageOfPage":{"@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#primaryimage"},"image":{"@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#primaryimage"},"thumbnailUrl":"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2026\/03\/sujet-askem-2026-03-31.png","datePublished":"2026-03-31T06:58:03+00:00","dateModified":"2026-03-31T06:58:09+00:00","description":"ASKEM BUREAU D'\u00c9TUDES ET DE FORMATION NUM\u00c9RIQUE. Nous vous assistons dans la transformation num\u00e9rique de vos outils, services et organisations tout en pla\u00e7ant l\u2019humain au c\u0153ur de notre d\u00e9marche d\u2019accompagnement.","breadcrumb":{"@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#primaryimage","url":"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2026\/03\/sujet-askem-2026-03-31.png","contentUrl":"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2026\/03\/sujet-askem-2026-03-31.png","width":1517,"height":1067},{"@type":"BreadcrumbList","@id":"https:\/\/askem.eu\/2026\/03\/31\/traefik-v3-reverse-proxy-dynamique-et-decouverte-de-services-pour-une-stack-docker\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/askem.eu\/"},{"@type":"ListItem","position":2,"name":"Traefik v3 : reverse proxy dynamique et d\u00e9couverte de services pour une stack Docker"}]},{"@type":"WebSite","@id":"https:\/\/askem.eu\/#website","url":"https:\/\/askem.eu\/","name":"askem","description":"","publisher":{"@id":"https:\/\/askem.eu\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/askem.eu\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/askem.eu\/#organization","name":"Askem","url":"https:\/\/askem.eu\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/askem.eu\/#\/schema\/logo\/image\/","url":"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:760\/h:480\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2020\/10\/logoGalaxieAskem3.png","contentUrl":"https:\/\/mlpi0fxo3sth.i.optimole.com\/cb:3obA.c61\/w:760\/h:480\/q:mauto\/f:best\/https:\/\/askem.eu\/wp-content\/uploads\/2020\/10\/logoGalaxieAskem3.png","width":760,"height":480,"caption":"Askem"},"image":{"@id":"https:\/\/askem.eu\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/fb.me\/askem.eu","https:\/\/linkedin.com\/company\/askem-eu"]},{"@type":"Person","@id":"https:\/\/askem.eu\/#\/schema\/person\/8bbee74ab9a977d56bf4826662e9d2e9","name":"askemadmin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/a202f744ee3a4b6fdbe2ceb57fd84c72559337791a276662270d8d2fb7842e3f?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a202f744ee3a4b6fdbe2ceb57fd84c72559337791a276662270d8d2fb7842e3f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a202f744ee3a4b6fdbe2ceb57fd84c72559337791a276662270d8d2fb7842e3f?s=96&d=mm&r=g","caption":"askemadmin"},"sameAs":["https:\/\/askem.eu"]}]}},"_links":{"self":[{"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/posts\/2156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/comments?post=2156"}],"version-history":[{"count":1,"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/posts\/2156\/revisions"}],"predecessor-version":[{"id":2158,"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/posts\/2156\/revisions\/2158"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/media\/2157"}],"wp:attachment":[{"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/media?parent=2156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/categories?post=2156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/askem.eu\/en\/wp-json\/wp\/v2\/tags?post=2156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}