Files
traefik/dynamic

Configuración Dinámica de Traefik

Este directorio contiene configuración que Traefik recarga automáticamente sin reiniciar el contenedor.

Archivos

  • middlewares.yml: Middlewares reutilizables (headers seguridad, rate limit, auth, etc.) + ejemplos de routers/servicios

Autenticación Básica

El middleware auth-basic está habilitado por defecto para proteger el dashboard de Traefik.

Configurar tu contraseña

  1. Genera hash bcrypt:
docker run --rm httpd:alpine htpasswd -nbB admin tu_password
  1. Copia el hash completo (después de admin:)

  2. Edita middlewares.yml línea 35:

auth-basic:
  basicAuth:
    users:
      - "admin:$2y$05$HASH_GENERADO_AQUI"
  1. Guarda → recarga automática en ~10 segundos

Uso

Aplicar middleware a un servicio

En el docker-compose.yaml de tu servicio:

services:
  mi-servicio:
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.mi-servicio.rule=Host(`app.tudominio.com`)"
      - "traefik.http.routers.mi-servicio.entrypoints=websecure"
      - "traefik.http.routers.mi-servicio.tls.certresolver=letsencrypt"
      - "traefik.http.routers.mi-servicio.middlewares=security-headers@file,rate-limit@file"

Nota: El sufijo @file indica que el middleware viene de configuración dinámica.

Cadena de middlewares

Puedes combinar varios:

- "traefik.http.routers.app.middlewares=security-headers@file,rate-limit@file,ip-whitelist@file"

Recarga automática

Traefik detecta cambios en este directorio y recarga sin reiniciar. Espera ~10 segundos tras editar.

Ejemplos adicionales