[英]Connecting to docker PostgreSQL from PhpStorm gives password authentication failed
我正在尝试从 PhpStorm 连接到 PostgreSQL,但它返回以下错误:
[28P01] FATAL: password authentication failed for user "app"
我有以下.env
文件设置:
POSTGRES_DB=app
POSTGRES_USER=app
POSTGRES_PASSWORD=password
POSTGRES_VERSION=15
以及docker-compose.yml
中的以下内容:
version: '3'
services:
database:
image: postgres:${POSTGRES_VERSION}-alpine
container_name: database
env_file:
- .env
volumes:
- db-data:/var/lib/postgresql/data:rw
ports:
- '5432'
volumes:
db-data:
运行docker-compose up -d
时确实成功创建了容器和卷。
我在 Ubuntu 22.04.1 LTS 上运行
我已经用不同的用户和密码组合多次重建容器(确保使用docker-compose down -v
来删除音量),所有结果都相同。
我尝试通过执行docker exec -it database psql -U app
然后运行ALTER ROLE app WITH PASSWORD 'password'
更改密码,但这并没有改变任何东西。
我还在网上看到它可能必须对设置为 ident 的用户进行身份验证,但我找不到在docker-compose.yml
文件中更改此设置的方法。
我该如何设置才能将我的 PhpStorm 正确连接到 PostgreSQL 数据库?
就我而言,我使用 WSL2 (Ubuntu) 运行 Windows 10。 作为设置应用程序的一部分,我在 Ubuntu 实例中安装了 Postgres。 我已经删除了该应用程序,但 Postgres 服务器仍在运行。 当我尝试使用localhost:5432
连接到 Docker Postgres 实例时,我改为连接到 WSL2 Postgres 实例。
就我而言,因为我不再在 WSL2 中使用 Postgres,所以我删除了它,这解决了问题。 您也可以停止它或使用@jjanes 提到的主机名/IP
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.