Am 2018-06-26 10:04, schrieb William Epler:
2018-06-25 23:04 GMT+02:00 Heiko Schlittermann <h...@schlittermann.de>:
Hallo Stefan,

Stefan Majewsky <majew...@posteo.de> (Mo 25 Jun 2018 22:21:46 CEST):
>Was hab ich vergessen bzw. falsch gemacht? Hat jemand einen Tipp für
>mich?

PostgreSQL spricht kein HTTP, sondern ein eigenes Protokoll. Dieses kann nicht von einem HTTP-Server wie Apache geproxyt werden.
Richtig.

Für IPv6 ist die Lösung einfach: Dafür sorgen, daß  ICMP6 und 5432/tcp
vom Docker-Host durchgelassen werden. Der Docker hat wie jede
Gerätschaft seine eigene Adresse und muß selbige nicht per NAT
umlügen.

Für IPv4 wirst Du an NAT auf dem Docker-Host nicht vorbeikommen. Eine
sehr gute Einführung dazu ist auf
https://www.karlrupp.net/de/computer/nat_tutorial zu finden.

Bevor Du den PostgreSQL aber in irgendeiner Weise im weltweiten
Verbindungsnetz zugänglich machst, solltest Du ihn dringends mit SSL
abgesichert haben - siehe
https://www.postgresql.org/docs/current/static/ssl-tcp.html

Vielen Dank für alle Antworten. Dass der Apache tatsächlich nur HTTP versteht und andere TCP-Verbindungen nicht einfach so durchproxied, macht natürlich Sinn. Das war mir gestern noch nicht so bewusst. Die TLS-Einstellungen hab ich von anderen Projekten kopiert, die aber alle nur Webkram sind, also HTTP sprechen.

Inzwischen haben auch noch andere Umstände dafür gesorgt, dass ich das lieber ganz anders mache: Postgres und pgadmin4 aus einem Compose-File heraus auf der gleichen Kiste starten. Nachteil: für jeden Datenbank-Server, die nach dem Compose-File gebaut wird, ein eigenes pgadmin4 Vorteil: keine offenen Datenbankverbindungen über verschiedene Rechner hinweg, sondern nur im jeweiligen Docker-Network

Danke und Gruß
Marc

Attachment: signature.asc
Description: OpenPGP digital signature

Antwort per Email an