Separar middlewares.yml y routers.yml en archivos independientes

This commit is contained in:
2025-12-01 12:57:34 +01:00
parent f3815ae8df
commit 6e7067c91f
3 changed files with 57 additions and 56 deletions

View File

@@ -4,7 +4,8 @@ Este directorio contiene configuración que Traefik recarga automáticamente sin
## Archivos
- **middlewares.yml**: Middlewares reutilizables (headers seguridad, rate limit, auth, etc.) + ejemplos de routers/servicios
- **middlewares.yml**: Middlewares reutilizables (headers seguridad, rate limit, auth, etc.)
- **routers.yml**: Ejemplos de routers y servicios estáticos (alternativa a labels Docker)
## Autenticación Básica
@@ -61,5 +62,5 @@ Traefik detecta cambios en este directorio y recarga sin reiniciar. Espera ~10 s
## Ejemplos adicionales
- **Routers y Servicios:** Ver ejemplos comentados al final de `middlewares.yml` para configurar rutas sin labels Docker
- **Routers y Servicios:** Ver ejemplos comentados en `routers.yml` para configurar rutas sin labels Docker
- **Middlewares avanzados:** Consulta la wiki: https://git.ictiberia.com/groales/traefik/wiki/Middlewares-Seguridad

View File

@@ -42,57 +42,3 @@ http:
regex: "^https?://www\\.(.+)"
replacement: "https://${1}"
permanent: true
# ============================================
# ROUTERS Y SERVICIOS (Ejemplos comentados)
# ============================================
# Descomentar y adaptar según necesites
# routers:
# # Ejemplo: Router para aplicación web con HTTPS y middlewares
# whoami:
# rule: "Host(`whoami.tudominio.com`)"
# entryPoints:
# - websecure
# middlewares:
# - security-headers
# - rate-limit
# service: whoami-service
# tls:
# certResolver: letsencrypt
#
# # Ejemplo: Router con autenticación básica y restricción IP
# admin-panel:
# rule: "Host(`admin.tudominio.com`)"
# entryPoints:
# - websecure
# middlewares:
# - auth-basic
# - ip-allowlist
# - security-headers
# service: admin-service
# tls:
# certResolver: letsencrypt
#
# services:
# # Ejemplo: Servicio apuntando a contenedor local
# whoami-service:
# loadBalancer:
# servers:
# - url: "http://whoami:80"
#
# # Ejemplo: Servicio apuntando a servidor externo
# admin-service:
# loadBalancer:
# servers:
# - url: "http://192.168.1.100:8080"
#
# # Ejemplo: Servicio con health check
# api-service:
# loadBalancer:
# servers:
# - url: "http://api:3000"
# healthCheck:
# path: "/health"
# interval: "10s"
# timeout: "3s"

54
dynamic/routers.yml Normal file
View File

@@ -0,0 +1,54 @@
# ============================================
# ROUTERS Y SERVICIOS (Ejemplos comentados)
# ============================================
# Descomentar y adaptar según necesites
http:
routers:
# Ejemplo: Router para aplicación web con HTTPS y middlewares
# whoami:
# rule: "Host(`whoami.tudominio.com`)"
# entryPoints:
# - websecure
# middlewares:
# - security-headers
# - rate-limit
# service: whoami-service
# tls:
# certResolver: letsencrypt
# Ejemplo: Router con autenticación básica y restricción IP
# admin-panel:
# rule: "Host(`admin.tudominio.com`)"
# entryPoints:
# - websecure
# middlewares:
# - auth-basic
# - ip-allowlist
# - security-headers
# service: admin-service
# tls:
# certResolver: letsencrypt
services:
# Ejemplo: Servicio apuntando a contenedor local
# whoami-service:
# loadBalancer:
# servers:
# - url: "http://whoami:80"
# Ejemplo: Servicio apuntando a servidor externo
# admin-service:
# loadBalancer:
# servers:
# - url: "http://192.168.1.100:8080"
# Ejemplo: Servicio con health check
# api-service:
# loadBalancer:
# servers:
# - url: "http://api:3000"
# healthCheck:
# path: "/health"
# interval: "10s"
# timeout: "3s"