嘿,我正在尝试创建一个postgresql数据库容器,我正在使用以下命令运行它:

docker-compose up

在以下合成文件上:
version: '3.1'
services:

  db:
    image: postgres
    restart: always
    environment:
      POSTGRES_USERNAME: admin
      POSTGRES_PASSWORD: admin
      POSTGRES_DB: default_db
    ports:
      - 54320:5432

但是,当我尝试使用以下python代码连接到它时:
import sqlalchemy
engine = sqlalchemy.create_engine('postgres://admin:admin@localhost:54320/default_db')
engine.connect()

我得到以下错误:
sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL:  password authentication failed for user "admin"

有人知道为什么会这样吗?

最佳答案

用POSTGRES_USER代替POSTGRES_USERNAME解决了这个问题。

关于python - 带有docker compose和sqlalchemy的PostgreSQL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58033457/

10-16 10:55