docker Calibre-web, reverse proxy und virtual host

Thorfinn

Benutzer
Mitglied seit
24. Mai 2019
Beiträge
890
Punkte für Reaktionen
133
Punkte
63
Irgendwie läuft es nicht mit dem reverse proxy

Calibre web läuft in Docker.
local port: 8083 auf container port: 8083 Network: tcp
Network name: bridge
Driver: bridge

virtual host ist eingerichtet, aber hier beginnt das Verständnis zu hinken
einen port-based virtual host für port 8083 kann ich nicht einrichten. (ist ja verständlich er ist ja für den Docker Container Calibre-web reserviert)
Zum Spass habe ich einen auf 8084 eingerichtet.

Die document root habe ich auf ein Verzeichnis in /web mit .htaccess verwiesen. .htaccess wie folgt:
Rich (BBCode):
RewriteEngine on  
RewriteCond %{HTTPS} off  
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
angelegt

HSTS und HTTP/2 sind erstmal aus.
HTTP backend: Apache 2.2
php backend: php 7.0


Reverse Proxy

Protocol: http
hostname: books.meinedomaine.xy
Port: 80

Destination:
Protocol: http
Hostname: localhost
Port: 8083

und dann noch mal für https mit port 443 anstatt 80

Hat jemand irgendwelche Ideen wo der Hase im Pfeffer liegt?
Muss ich noch einen virtual host anlegen?
Muss noch etwas zu .htaccess zugefügt werden?
oder oder oder?


Der Router ist auf 8083 zu.
Mit 192.xxx.xxx.xxx:8083 Lan adresse läuft es natürlich.
 

haydibe

Benutzer
Mitglied seit
12. Apr 2016
Beiträge
1.042
Punkte für Reaktionen
114
Punkte
83
Die Namensauflösung für die Subdomain ist in dem für die Domain meinedomaine.xy zuständigen DNS-Server hinterlegt und funktioniert auch?
Sprich, wenn Du von deinem Rechner aus einen Ping auf die Subdomain machst, bekommst Du die IP von Deinem NAS (bzw. Deinem Router) zurück?

Der Router muss natürlich Port 80 und 443 an das NAS weiterleiten - andere Ports werden für dieses Szenarion nicht benötigt.

und dann noch mal für https mit port 443 anstatt 80
Sprich: terminiert https und reicht weiter an localhost:8083?

Sollte dann ja passen.

Wiso eignetlich PHP7.0 Backend? Nutzt Du nicht den Reverse Proxy im Applikationsportal?
 
Zuletzt bearbeitet:

Thorfinn

Benutzer
Mitglied seit
24. Mai 2019
Beiträge
890
Punkte für Reaktionen
133
Punkte
63
Die Namensauflösung für die Subdomain ist in dem für die Domain meinedomaine.xy zuständigen DNS-Server hinterlegt und funktioniert auch?
Sprich, wenn Du von deinem Rechner aus einen Ping auf die Subdomain machst, bekommst Du die IP von Deinem NAS (bzw. Deinem Router) zurück?
Am DSN war ich noch nicht.
Aus dem wan lande ich mit books.meinedomaine.xy auf der Startseite der NAS (index.html unter /web) und eben nicht auf Calibre.
Aus dem wan lande ich mit video.meinedomaine.xy auf der Login Seite der Videostation.

Der Router muss natürlich Port 80 und 443 an das NAS weiterleiten - andere Ports werden für dieses Szenarion nicht benötigt.
Die Ports sind offen und werden weitergeleitet. Videostation, Audiostation Photostation etc laufen.

Sprich: terminiert https und reicht weiter an localhost:8083?
Sollte dann ja passen.
tut es ja aber leider nicht. Ich besuch noch mal den DNS.

Wiso eignetlich PHP7.0 Backend? Nutzt Du nicht den Reverse Proxy im Applikationsportal?
War auch meine Vermutung, dass ich das nicht brauche, aber auch ohne: ich komme nicht auf Calibre.
 

haydibe

Benutzer
Mitglied seit
12. Apr 2016
Beiträge
1.042
Punkte für Reaktionen
114
Punkte
83
Schau Dir mal diese Tutorial an. Dort ist alles relevante zu sehen - einschließlich der Zuweisung eines TLS-Zertifikats.
 

Thorfinn

Benutzer
Mitglied seit
24. Mai 2019
Beiträge
890
Punkte für Reaktionen
133
Punkte
63
Danke,
der reverse proxy ist in dem von haydibe verlinktem Tutorial gut erklärt.
Nur hatte ich vergessen dass der Calibre ja im Docker Host sitzt und dass IP der "gedockten virtuellen Maschine" als Hostname des Reverse Proxy einzutragen ist.
jetzt löbbt es.
nochmals Danke
 

haydibe

Benutzer
Mitglied seit
12. Apr 2016
Beiträge
1.042
Punkte für Reaktionen
114
Punkte
83
Was hast Du denn nun wo eingestellt?

Deine Formulierung liest sich so, als ob die Container IP als "Destination Hostname" angegeben wurde - hier sollte localhost oder die DSM IP stehen und der Host-Port des Port-Mappings als unter "Destionation Port". In der Docker-Welt macht man in 99% der Fälle etwas falsch, wenn man die Container IP verwendet.. sie kann sich ändern und ist unzuverässig um irgendwo "hart verdrahtet" zu werden.
 
NAS-Central - Ihr Partner für NAS Lösungen
NAS-Central - The Home of NAS

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat