Proxy inverso simple con Traefik


9

Actualmente estoy usando Apache como proxy para mis contenedores LXD, usando este tipo de configuración:

<VirtualHost *:80>
    ServerName example.com
    ProxyRequests off
    ProxyPass / http://10.0.0.142/ retry=0
    ProxyPassReverse / http://10.0.0.142/
    ProxyPreserveHost On
</VirtualHost>

Me gustaría cambiar a traefik . He intentado esta configuración:

defaultEntryPoints = ["http"]
[entryPoints]
  [entryPoints.http]
  address = ":80"

[backends]
  [backends.backend1]
    [backends.backend1.servers.server1]
       url = "http://10.0.0.142"

[frontends]
  [frontends.frontend1]
      backend = "backend1"
      passHostHeader = true
      [frontends.frontend1.routes.example]
          rule = "Host:example.com"
  • ¿Son estos dos equivalentes?
  • ¿Se puede simplificar la configuración traefik? (eliminar reglas innecesarias)

(Nota: no estoy planeando usar Docker, y preferiría no hacerlo).

Respuestas:


18

Te falta la definición del tipo de back-end (archivo, Docker, Swarm ...)

En su caso, simplemente agregue (o uncoment) " [file] " en su archivo conf, así:

defaultEntryPoints = ["http"]
[entryPoints]
  [entryPoints.http]
  address = ":80"

[file]

[backends]
  [backends.backend1]
    [backends.backend1.servers.server1]
       url = "http://10.0.0.142"

[frontends]
  [frontends.frontend1]
      backend = "backend1"
      passHostHeader = true
      [frontends.frontend1.routes.example]
          rule = "Host:example.com"

2
Entonces, ¿se requiere [archivo]? No encontré nada sobre eso. ¿Por qué es así?
lepe

1
sí, si simplemente desea crear reglas de forma estática en un archivo de configuración. Puede consultar el documento: https://docs.traefik.io/toml/#file-backend
Benjamin OLIVIER

Okay. Entendido. ¡Gracias! (¿Le importaría votar mi pregunta? No estoy seguro de por qué fue rechazada)
lepe

1
Buena pregunta
estuve

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.