PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Docker - Postgres und pgAdmin 4:Verbindung abgelehnt

In diesem Fall:

  1. Pgadmin kann keine Verbindung zu localhost herstellen, aber psql funktioniert außerhalb von Docker.
  2. sowohl pgadmin als auch Postgres laufen als Container

Obwohl Sie dies nicht angegeben haben, könnten beide Container idealerweise Teil einer benutzerdefinierten Brücke sein Netzwerk für die automatische DNS-Auflösung.

Wenn sie nicht explizit hinzugefügt werden, sind sie Teil des Standard-Bridge-Netzwerks.

Um die in Ihrer Docker-Laufzeit erstellten Netzwerke herauszufinden, geben Sie Folgendes ein:$ docker network ls

Einige Netzwerke werden in der Konsole aufgelistet, vielleicht finden Sie einen [name]_default es sollte Ihr Netzwerk sein.

Führen Sie docker network inspect [name]_default aus it'll show up a bunch of information, for us the most important is IPv4Address, something like this:"7c3cd7532ab8aacc70830afb74adad7296d9c8ddd725c498af2d7ee2d2c2aadd": { "Name": "intime_postegres_1", "EndpointID": "56a9cb574469f22259497b72719f9f4a3e555b09f95058fcf389ef5287381f28", "MacAddress": "02:42:ac:12:00:02", "IPv4Address": "172.18.0.2/16", "IPv6Address": "" }

Anstatt localhost für den Servernamen/IP im pgAdmin-Dialogfeld „Neuer Server“ zu verwenden, stellen Sie eine Verbindung zur „IPv4Address“ der Postgres-Instanz her.

In meinem Fall verbinden bei 172.18.0.2:5432 , funktionierte wie ein Zauber.