Generador de Configuración Dinámica Traefik v3
Proxy inverso nativo de la nube moderno

Generador de Configuración Dinámica Traefik v3

Especificación técnica y guía de producción para generar configuraciones dinámicas de enrutamiento, middlewares y TLS en Traefik v2 y v3.

Multi-Format: YAML • TOML • Docker Labels • IngressRoute
Preajustes:
Constructor de Reglas
Nombre de host
PathPrefix
Operador
Cert Resolver (ACME)
Dominios / SANs
# Traefik v3 Dynamic Configuration
# Generated 100% Client-Side by ToolsAA Traefik Config Generator
# Documentation: https://doc.traefik.io/traefik/v3.0/

http:
  routers:
    # Global automatic HTTP -> HTTPS redirect router
    global-http-redirect:
      entryPoints:
        - "web"
      rule: "PathPrefix(`/`)"
      middlewares:
        - "redirect-to-https"
      service: "noop@internal"
      priority: 1
    api-router:
      entryPoints:
        - "websecure"
      rule: "Host(`api.toolsaa.com`) && PathPrefix(`/v1`)"
      service: "api-service"
      priority: 100
      middlewares:
        - "strip-api-prefix"
        - "api-rate-limit"
        - "security-headers"
      tls:
        certResolver: "letsencrypt"
        domains:
          - main: "api.toolsaa.com"
    auth-router:
      entryPoints:
        - "websecure"
      rule: "Host(`api.toolsaa.com`) && PathPrefix(`/auth`)"
      service: "auth-service"
      priority: 110
      middlewares:
        - "api-rate-limit"
        - "security-headers"
      tls:
        certResolver: "letsencrypt"
        domains:
          - main: "api.toolsaa.com"

  middlewares:
    redirect-to-https:
      redirectScheme:
        scheme: "https"
        permanent: true
    strip-api-prefix:
      stripPrefix:
        prefixes:
          - "/v1"
          - "/api/v1"
        forceSlash: false
    api-rate-limit:
      rateLimit:
        average: 100
        burst: 50
        period: "1s"
    security-headers:
      headers:
        sslRedirect: true
        stsSeconds: 31536000
        stsIncludeSubdomains: true
        stsPreload: true
        forceSTSHeader: true
        customFrameOptionsValue: "SAMEORIGIN"
        contentTypeNosniff: true
        contentSecurityPolicy: "default-src 'self'"

  services:
    api-service:
      loadBalancer:
        passHostHeader: true
        servers:
          - url: "http://10.0.1.10:8080"
          - url: "http://10.0.1.11:8080"
        healthCheck:
          path: "/healthz"
          interval: "10s"
          timeout: "3s"
        sticky:
          cookie:
            name: "traefik_api_sticky"
            secure: true
            httpOnly: true
            sameSite: "lax"
    auth-service:
      loadBalancer:
        passHostHeader: true
        servers:
          - url: "http://10.0.1.20:4000"
        healthCheck:
          path: "/status"
          interval: "15s"
          timeout: "2s"

tls:
  options:
    default:
      minVersion: "VersionTLS12"
      sniStrict: true
      cipherSuites:
        - "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"
        - "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
        - "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
        - "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
        - "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305"
        - "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305"
Enrutadores Activos
2 Reglas activas
Middlewares Activos
3 Cadenas
Compatible Traefik v3.x
Traefik v3.x Ready

100% Procesamiento en el Cliente

Sin envíos a servidores externos ni analíticas. Sus reglas de enrutamiento y credenciales se procesan en el entorno aislado del navegador.

Cumplimiento con Estándares Traefik v3

Genera sintaxis nativa de Traefik v3 con ipAllowList, reglas entre comillas invertidas y suites de cifrado TLS actualizadas.

Exportación Multi-Formato

Exporte fácilmente a archivos dinámicos YAML, TOML, etiquetas Docker Compose y Manifiestos IngressRoute de Kubernetes.

Referencia técnica y guía de arquitectura

Generador de Configuración Dinámica Traefik v3 — Guía de referencia

Especificación técnica y guía de producción para generar configuraciones dinámicas de enrutamiento, middlewares y TLS en Traefik v2 y v3.

Parámetros clave y controles

rulestring

Expresión de coincidencia de Traefik que evalúa atributos HTTP/TCP como Host, PathPrefix o Headers mediante operadores booleanos.

Por defecto: Host(`api.example.com`) && PathPrefix(`/v1`)
entryPointsstring[]

Puertos y sockets de escucha definidos en la configuración estática donde el enrutador acepta tráfico entrante (ej. web o websecure).

Por defecto: ["websecure"]
certResolverstring

Identificador del proveedor ACME declarado en la configuración estática para la emisión y renovación automática de certificados Let's Encrypt.

Por defecto: "letsencrypt"
healthCheckPathstring

Ruta de comprobación HTTP consultada periódicamente para verificar el estado de los servidores backend antes de balancear tráfico.

Por defecto: "/healthz"
passHostHeaderboolean

Define si Traefik debe reenviar la cabecera Host original del cliente directamente hacia el servicio backend aguas abajo.

Por defecto: true

Consejos profesionales y mejores prácticas

Optimización de Prioridad

Al utilizar rutas PathPrefix superpuestas (ej. /api y /api/v2), asigne una prioridad numérica explícita a la ruta más específica para evitar resoluciones ambiguas.

Secuencia de Middlewares

Posicione redirectScheme e ipAllowList antes de stripPrefix y rateLimit; alterar prefijos de ruta prematuramente rompe la validación de autenticación y los registros de acceso.

Seguridad de Cookie Persistente

Al activar sticky sessions sobre routers con TLS, vincule un middleware de cabeceras de seguridad para forzar atributos HttpOnly, Secure y SameSite=Lax en la cookie.

Errores comunes y solución de problemas

Error de sintaxis en el enrutador: comilla invertida inesperada o paréntesis faltante en Host o PathPrefix

Encierre dominios y prefijos estrictamente entre comillas invertidas (ej. Host(`app.dominio.com`)) en lugar de comillas dobles, uniendo condiciones con && o ||.

El backend responde con error 404 Not Found al recibir solicitudes bajo PathPrefix

Muchos contenedores backend esperan recibir peticiones en la raíz (/); agregue un middleware stripPrefix a la cadena para eliminar el segmento de ruta antes del reenvío.

El desafío ACME HTTP-01 falla en enrutadores configurados únicamente en websecure

La validación HTTP-01 requiere accesibilidad por el puerto 80; habilite la redirección en el entryPoint 'web' o configure el resolver para utilizar desafíos DNS-01.

Preguntas frecuentes (FAQ)

¿Cuáles son las diferencias de sintaxis en las reglas de enrutamiento entre Traefik v2 y v3?▼

Traefik v3 impone un análisis sintáctico estricto y elimina la separación por comas en las directivas. Los comparadores como Host y PathPrefix deben invocarse como funciones estándar unidas por && o ||.

¿Esta herramienta envía direcciones IP de backend o certificados a servidores externos?▼

No. Toda la generación se ejecuta exclusivamente en el motor JavaScript de su navegador web. Ninguna IP, archivo de configuración, dominio o secreto es transmitido a infraestructura remota.

¿Cómo se diferencian los enrutadores TCP y HTTP asignados al mismo entryPoint?▼

Los routers HTTP analizan cabeceras de Capa 7 (Host, Path), mientras que los routers TCP operan en Capa 4 evaluando el SNI de TLS con HostSNI(`dominio.com`) o capturando tráfico con HostSNI(`*`).

¿Cómo aplicar las configuraciones generadas en entornos Docker Compose o Kubernetes?▼

Puede cargar el YAML generado mediante el proveedor de archivos de Traefik (providers.file.directory) o trasladar los parámetros a etiquetas de Docker o recursos IngressRoute de Kubernetes.

Herramientas y utilidades relacionadas

Todas las herramientas →
Referencia de Desarrollador para Caddyfile GeneratorDesarrollo

Referencia técnica y guía de configuración para generar archivos Caddyfile optimizados para entornos de producción.

Abrir herramienta→
Guía para Desarrolladores del Benchmark de Compresión Brotli y Gzip y Estimador de Ancho de BandaDesarrollo

Analiza cargas de texto, CSS y JS con la API nativa CompressionStream, estimando ratios de compresión Brotli/Gzip y tiempos de carga en redes móviles 3G/4G.

Abrir herramienta→
Guía de desarrollo del conversor de Protobuf .proto a Interfaces y Enums de TypeScriptDesarrollo

Analiza definiciones de mensajes Protocol Buffers (proto2 y proto3), enums y campos anidados en interfaces TypeScript limpias.

Abrir herramienta→
Guía para Desarrolladores: Generador de Documentación OpenAPI y Swagger a MarkdownDesarrollo

Convierta especificaciones OpenAPI 3.0 y Swagger 2.0 JSON/YAML en documentación de referencia Markdown limpia compatible con GitHub Flavored Markdown.

Abrir herramienta→
Guía de desarrollo del convertidor de GraphQL SDL a esquema de PrismaDesarrollo

Traduzca tipos de objetos, enumeraciones y directivas de GraphQL SDL a modelos limpios y relaciones del ORM Prisma.

Abrir herramienta→
Guía para desarrolladores: Generador de entidades TypeORM a partir de SQL DDL (Entidades TypeScript)Desarrollo

Convierta sentencias DDL SQL CREATE TABLE en clases de entidad TypeScript TypeORM limpias con decoradores @Column, @PrimaryGeneratedColumn, relaciones e índices.

Abrir herramienta→