我的 Postgres 容器正在运行,它是从这个 docker-compose 文件构建的:
version: "3.9"
services:
db:
image: postgres
volumes:
- ./data/db:/var/lib/postgresql/data
ports:
- "5432:5432"
environment:
- POSTGRES_DB=db
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=password.
它运行良好,我的其他 dockerized 服务器可以连接到它。但是,如果我从 docker 实例外部打开 CLI 并尝试连接
psql postgres://postgres:password@localhost:5432/db
或者尝试在PyCharm中添加数据库连接,我得到
psql: error: could not connect to server: FATAL: database "db" does not exist
作为回应。我需要做什么才能允许外部调用容器化数据库?我试过在 docker compose 中添加“expose:5432”,但这没有帮助。
答案 0 :(得分:0)
在这里回答了我自己的问题 - 通过停止运行 PgAdmin,我猜这会阻止 5432 端口,CLI 和 PyCharm 可以访问容器化的 postgres 服务