我使用下面的 docker compose 文件创建了 2 个容器 [pgadmin4 、 postgres ]。
services:
db:
container_name: db
image: postgres
environment:
POSTGRES_USER: ashish
POSTGRES_PASSWORD: ashish
PGDATA: /data/postgres
POSTGRESS_DB: jobapp
ports:
- "5432:5432"
networks:
- postgres
restart: always
pgadmin:
container_name: pgadmin4
image: dpage/pgadmin4
environment:
PGADMIN_DEFAULT_EMAIL: [email protected]
PGADMIN_DEFAULT_PASSWORD: root
ports:
- "5050:80"
networks:
- postgres
restart: always
networks:
postgres:
name: postgres
driver: bridge
我通过 localhost:5050 登录 pgadmin4。 然后我尝试使用撰写文件中传递的凭据创建服务器。这里的地址作为网络名称传递,即“postgres”
使用上述值,会出现错误,因为名称不被喜爱。 然后我也尝试将地址设置为“localhost”和“0.0.0.0”,但仍然失败,并显示错误消息,因为连接被拒绝。
NETWORK ID NAME DRIVER SCOPE
1d1c44a0b064 bridge bridge local
0e0a1145cf91 host host local
06fa74116375 my-network bridge local
7e93df1725d9 none null local
2a74ae7944da postgres bridge local
以上是docker network ls的响应。
来自 db 容器的 cat /data/postgres/pg_hba.conf 生成下表。
提前感谢您抽出宝贵的时间。非常感谢任何关注。
谢谢@larsks 在主机名/地址字段中使用“db”时我可以登录