PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Docker - Postgres et pgAdmin 4 :Connexion refusée

Dans ce cas :

  1. Pgadmin ne parvient pas à se connecter à localhost, mais psql fonctionne depuis l'extérieur de docker.
  2. pgadmin et Postgres fonctionnent en tant que conteneurs

Bien que vous n'ayez pas indiqué si vous le faites, idéalement, les deux conteneurs pourraient faire partie d'un pont personnalisé réseau pour la résolution DNS automatique.

S'ils ne sont pas ajoutés explicitement, ils feront partie du réseau de ponts par défaut.

Pour connaître les réseaux créés dans votre runtime docker, tapez :$ docker network ls

Certains réseaux seront listés dans la console, peut-être trouverez-vous un [name]_default ce devrait être votre réseau.

Exécutezdocker network inspect [name]_default 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": "" }

Au lieu d'utiliser localhost pour le nom/l'adresse IP du serveur dans la boîte de dialogue du nouveau serveur de pgAdmin, connectez-vous à l'"adresse IPv4" de l'instance postgres

Dans mon cas, connexion à 172.18.0.2:5432 , a fonctionné comme un charme.