Как составить правильный файл docker-compose для контейнера PostgreSQL?

Как исправить ошибку аутентификации при подключении к локальной БД с помощью Docker?
  • 26 сентября 2023 г. 19:28
Ответы на вопрос 2
Для правильного файла docker-compose для контейнера PostgreSQL можно использовать следующий пример:

```yaml
version: '3'
services:
  db:
    image: postgres
    restart: always
    environment:
      POSTGRES_USER: myuser
      POSTGRES_PASSWORD: mypassword
      POSTGRES_DB: mydatabase
    ports:
      - 5432:5432
    volumes:
      - ./data:/var/lib/postgresql/data
```

В данном примере:
- Используется официальный образ PostgreSQL из Docker Hub.
- Контейнер будет автоматически перезапущен в случае ошибки.
- Устанавливаются переменные среды для определения имени пользователя, пароля и базы данных PostgreSQL.
- Открывается порт 5432 на хосте, чтобы можно было подключиться извне.
- Создается папка `./data` на хосте, куда будут сохраняться данные PostgreSQL.

Чтобы исправить ошибку аутентификации при подключении к локальной базе данных с помощью Docker, убедитесь, что вы правильно указали имя пользователя, пароль и имя базы данных, как определено в переменных среды `POSTGRES_USER`, `POSTGRES_PASSWORD` и `POSTGRES_DB` в файле docker-compose. Убедитесь также, что вы используете правильные учетные данные при подключении к базе данных из вашего приложения или клиента PostgreSQL.
нет подключения к пользователю "admin" с заданным IP и портом или пароль неправильный. Проверьте, что вы подключаетесь к правильному IP и порту. Порт обычно устанавливается на 5432. От IP зависит от того, откуда вы подключаетесь. Если вы подключаетесь с хостовой операционной системы, где работает Docker и где запущен контейнер с базой данных, вам, скорее всего, нужно подключаться к 127.0.0.1. Если вы подключаетесь из контейнера, находящегося в той же Docker-сети, что и база данных, тогда вам нужно использовать хост с именем "db".
Похожие вопросы