Django не может подключиться к запущенному докер-контейнеру postgres

Я удивлен, что не могу заставить это работать, поскольку я запускал приложения django с БД postgres в контейнерах docker несколько раз, однако в этот раз на моей машине Linux приложение django не может подключиться к контейнеру postgres docker, тогда как на моем Mac эта установка работает без проблем.

Я получаю стандартную ошибку:

django.db.utils.OperationalError: не удалось подключиться к серверу: Host is unreachable Работает ли сервер на хосте "postgresdb" (172.27.0.2) и принимает ли он TCPIP соединения на порт 5432? TCP/IP соединения на порт 5432?

Контейнер postgres запущен и должен быть доступен. Я проверяю IP-адрес контейнера docker, и он кажется правильным. Мой файл docker-compose выглядит следующим образом:

version: "3.8"
services:
  app:
    container_name: data-management
    restart: always
    build: ./
    ports:
      - '3000:3000'
    links:
      - 'postgresdb'
    volumes:
      - ./:/usr/local/share/src/app
    env_file:
      - .dev.env

  postgresdb:
    container_name: be-postgres
    restart: always
    image: postgres:13.4-alpine
    ports:
      - '5432:5432'
    volumes:
      - postgres-db:/var/lib/postgresql/data
    env_file:
      - .dev.env

volumes:
  postgres-db:

Конфигурации хранятся в файле окружения, который используется в обоих контейнерах, чтобы избежать любых несоответствий.

POSTGRES_PASSWORD=devpassword123
POSTGRES_USER=devuser
POSTGRES_SERVICE=postgresdb
POSTGRES_PORT=5432
POSTGRES_DB=data_management

Настройки django DB настолько стандартны, насколько это возможно:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'HOST': os.environ['POSTGRES_SERVICE'],
        'NAME': os.environ['POSTGRES_DB'],
        'PORT': os.environ['POSTGRES_PORT'],
        'USER': os.environ['POSTGRES_USER'],
        'PASSWORD': os.environ['POSTGRES_PASSWORD'],
    }
}

У меня нет идей, что может быть причиной этого, так как это происходит только на моей машине Fedora и нет никаких проблем при запуске на моем Mac. В прошлом у меня уже были проблемы с SELinux с некоторыми томами docker, однако, погуглив, я не смог найти никаких предположений о том, что SELinux может быть виновником снова.

Вернуться на верх