Django docker micro postgres server error:django could not translate host name "db" to address: Имя или служба неизвестны

Я создал проект django, он хорошо работает в локальном окружении, и также хорошо, если я позволяю docker подключить мою локальную базу данных, установив host в:

host.docker.internal

Но когда я устал конвертировать весь проект в docker micro postgres server, после запуска:

docker-compose build 

error:

django.db.utils.OperationalError: could not translate host name "db" to address: Name or service not known

Вот мой set.py:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'postgres',
        'USER': 'postgres',
        'HOST': 'db',
        'PORT': '5432',

    }
}

dockerfile:

FROM python:3

ENV PYTHONUNBUFFERED 1

WORKDIR /app

ADD . /app

COPY ./requirements.txt /app/requirements.txt

RUN pip install -r requirements.txt

RUN python manage.py makemigrations

RUN python manage.py migrate

RUN python manage.py load_patient_data

COPY . /app

docker-compose.yml

version: '3'

services:

  web:
    build: .
    command: python manage.py runserver 0.0.0.0:8000
    ports:
      - 8000:8000
    depends_on:
      - db
  db:
    image : postgres
    environment:
      POSTGRES_HOST_AUTH_METHOD: trust
Вернуться на верх