Einfacher Reverse Proxy mit Traefik


9

Ich verwende derzeit Apache als Proxy für meine LXD-Container mit den folgenden Einstellungen:

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

Ich würde gerne zu traefik wechseln . Ich habe diese Konfiguration ausprobiert:

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"
  • Sind diese beiden gleichwertig?
  • Kann die Traefik-Konfiguration vereinfacht werden? (unnötige Regeln entfernen)

(Hinweis: Ich habe nicht vor, Docker zu verwenden, und ich würde es vorziehen, dies nicht zu tun.)

Antworten:


18

Ihnen fehlt die Backend-Typdefinition (Datei, Docker, Schwarm ...)

In Ihrem Fall fügen Sie einfach " [Datei] " in Ihre conf-Datei ein (oder entfernen Sie sie) , wie folgt:

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
Also ist [Datei] erforderlich? Daran habe ich nichts gefunden. Warum ist es so?
Lepe

1
Ja, wenn Sie Regeln einfach manuell statisch in einer Konfigurationsdatei erstellen möchten. Sie können auf das Dokument verweisen: https://docs.traefik.io/toml/#file-backend
Benjamin OLIVIER

okay. verstanden. Vielen Dank! (Haben Sie etwas dagegen, meine Frage zu bewerten? Ich bin mir nicht sicher, warum sie abgelehnt wurde.)
Lepe

1
Gute Frage - steckte dort für eine Stunde fest ...
andig

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.