Я создал базу данных на докере:
docker run --name database -e POSTGRES_PASSWORD=password -d -p 5436:5436 postgres
Создал некоторую базу данных внутри:
createdb database
Также создан суперпользователь. Теперь я пытаюсь подключиться с локального хоста:
psql -h localhost -p 5436 -U postgres
После этого я получаю следующую ошибку:
psql: The server closed the connection unexpectedly
This probably means that the server has terminated abnormally
before or while processing your inquiry.
В вашем случае вы пытаетесь открыть 5436
и сопоставить с вашим портом хоста 5436
, но для этого может потребоваться использовать -p 5436:5432
, поскольку Postgres использует порт 5432 в качестве порта по умолчанию.
docker run --name database -e POSTGRES_PASSWORD=password -d -p 5436:5432 postgres
Есть какое-то описание от Контейнерная сеть
-p 8080:80:Map TCP port 80 in the container to port 8080 on the Docker host.