PostgreSQL с docker compose и sqlalchemy - PullRequest
       2

PostgreSQL с docker compose и sqlalchemy

1 голос
/ 20 сентября 2019

Эй, я пытаюсь создать контейнер базы данных 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"

Кто-нибудь знает, почему это происходит?

Ответы [ 2 ]

0 голосов
/ 21 сентября 2019

Вы должны использовать POSTGRES_USER вместо POSTGRES_USERNAME.

Вот моя конфигурация postgres docker-compose для вашей справки.

version: '3'
services:
    postgres:
        image: 'mdillon/postgis:latest'
        environment:
            - TZ=Asia/Shanghai
            - POSTGRES_USER=postgres
            - POSTGRES_PASSWOR=postgres
        ports:
            - '15432:5432'
0 голосов
/ 20 сентября 2019

Использование POSTGRES_USER вместо POSTGRES_USERNAME решило эту проблему для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...