Django в docker compose не видит posgresql

У меня проблема с моим django + postgresql docker compose.

docker-compose.yml:

version: '3.8'

services:
  db:
    image: postgres:12.0-alpine
    volumes:
      - postgres_data:/var/lib/postgresql/data/
    env_file:
      - ./.env
  web:
    build: .
    command: python MoreEnergy/manage.py runserver 0.0.0.0:8000
    volumes:
      - ./MoreEnergy/:/MoreEnergy/
    ports:
      - 8000:8000
    env_file:
      - ./.env
    depends_on:
      - db

volumes:
  postgres_data:

Dockerfile:

FROM python:3.9-alpine

WORKDIR /app

# set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# install psycopg2 dependencies
RUN apk update \
    && apk add postgresql-dev gcc python3-dev musl-dev

# install dependencies
COPY requirements.txt /app/requirements.txt
RUN pip install --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt


# copy project
COPY . .

проверка контейнера db:

(shell) $ docker compose exec db psql --username=dmitriy --dbname=more_energy_db

psql (12.0)
Type "help" for help.

more_energy_db=# \l
                                  List of databases
      Name      |  Owner  | Encoding |  Collate   |   Ctype    |  Access privileges  
----------------+---------+----------+------------+------------+---------------------
 more_energy_db | dmitriy | UTF8     | en_US.utf8 | en_US.utf8 | 
 postgres       | dmitriy | UTF8     | en_US.utf8 | en_US.utf8 | 
 template0      | dmitriy | UTF8     | en_US.utf8 | en_US.utf8 | =c/dmitriy         +
                |         |          |            |            | dmitriy=CTc/dmitriy
 template1      | dmitriy | UTF8     | en_US.utf8 | en_US.utf8 | =c/dmitriy         +
                |         |          |            |            | dmitriy=CTc/dmitriy
(4 rows)

more_energy_db=# 

error:

django.db.utils.OperationalError: could not connect to server: Connection refused
        Is the server running on host "127.0.0.1" and accepting
        TCP/IP connections on port 5432?

Как вы можете видеть, db контейнер работает правильно, но web контейнер не видит базу данных. В моем .env файле есть все необходимые переменные для работы контейнеров. Что мне делать?

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