I det här fallet:
- Pgadmin kan inte ansluta till localhost, men psql fungerar från en extern docker.
- både pgadmin och Postgres körs som behållare
Även om du inte har angett om du gör det, skulle helst båda behållarna kunna ingå i en anpassad brygga nätverk för automatisk DNS-upplösning.
Om de inte läggs till explicit kommer de att vara en del av standardbryggnätverket.
För att ta reda på nätverken som skapades under din docker-runtime, skriv:$ docker network ls
Vissa nätverk kommer att listas i konsolen, kanske hittar du en [name]_default
det borde vara ditt nätverk.
Kördocker 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": ""
}
Istället för att använda localhost för servernamnet/ip i dialogrutan pgAdmin new server, anslut till postgres-instansens "IPv4Address".
I mitt fall ansluter du till 172.18.0.2:5432
, fungerade som en charm.