Zum Hauptinhalt springen
Version: 5.2

Reverse-Proxy (Traefik, nginx, etc)

Um den OPC Router im Docker hinter einem Reverse-Proxy wie z.B. Traefik oder nginx zu betreiben, müssen einige Einstellungen vorgenommen werden. Dabei ist zu beachten, dass der OPC Router sowohl HTTP- als auch WebSocket-Verbindungen verwendet, die vom Reverse-Proxy korrekt weitergeleitet werden müssen.

hinweis

Dieser Abschnitt beschreibt nur die notwendigen Schritte für das Web-Management. Für den REST-Server oder andere Plug-Ins sind möglicherweise weitere Anpassungen erforderlich.

tipp

Um die Netzwerkperformance zu optimieren, empfehlen wir bei Verwendung eines Reverse-Proxys das SSL-Offloading im Reverse-Proxy und nicht im OPC Router zu aktivieren. Dies gilt insbesondere dann, wenn der Netzwerkverkehr zwischen dem Reverse-Proxy und dem OPC Router als sicher angesehen werden kann.

Path-Präfix

Um den OPC Router über einen Reverse-Proxy mit Pfad-Präfix zu erreichen, müssen zwei Umgebungsvariablen gesetzt werden. Die Umgebungsvariable WEB_BASE_PATH gibt den Pfad-Präfix an, den der Reverse-Proxy verwendet. Die Umgebungsvariable ASPNETCORE_FORWARDEDHEADERS_ENABLED muss auf true gesetzt werden, damit der OPC Router die vom Reverse-Proxy übermittelten Header-Informationen verarbeiten kann.

Beispielhafte Traefik-Konfiguration:

docker run ... \
-e "WEB_BASE_PATH=/opc-router" \
-e ASPNETCORE_FORWARDEDHEADERS_ENABLED=true \
--label "traefik.http.routers.reverse-proxy.rule=PathPrefix(`/opc-router`)"

Hostname

Um den OPC Router unter einem bestimmten Hostnamen zugänglich zu machen, können Sie einen Reverse-Proxy einrichten. Dabei müssen Sie darauf achten, dass der Reverse-Proxy-Host selbst unter der angegebenen DNS-Adresse erreichbar ist. Außerdem muss die Umgebungsvariable ASPNETCORE_FORWARDEDHEADERS_ENABLED auf true gesetzt werden, damit der OPC Router die Header-Informationen des Reverse-Proxys korrekt verarbeiten kann.