Django не видит Postgres из docker-compose
делаю композ для джанго и постгреса, но джанго не видит постгрес на 5432 порте
version: "3.8"
services:
backend:
image: backend:latest
build: .
ports:
- "8000:8000"
env_file:
- .envs/docker.env
depends_on:
- db
db:
image: postgres:12
volumes:
- postgres_data:/var/lib/postgresql/data
env_file:
- .envs/docker.env
ports:
- "8001:5432"
volumes:
postgres_data:
Dockerfile
FROM python:3.8-slim
RUN apt-get update && apt-get install -y gcc libffi-dev g++
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
POETRY_VERSION=1.1.3
# App directory
WORKDIR /app
RUN pip install "poetry==$POETRY_VERSION"
RUN python -m venv /venv
COPY pyproject.toml poetry.lock ./
RUN . /venv/bin/activate && poetry install --no-root
COPY . .
RUN chmod +x docker-entrypoint.sh
CMD ["./docker-entrypoint.sh"]
Скрипт пытается запустить сервер, но не может из-за отсутствия бд. Всё, что я вижу это
- Окружение настроено правильно и переменные окружения попадают правильно
- Контейнер бд запускается и работает. Об этом говорится в логах и я с хоста могу подключиться по 8001 порту
- В бд даже не приходит реквест об авторизации, пинг из контейнера джанго говорит, что порты пусты
- Пытался открывать, закрывать порты через композ и докерфайл, тоже не помогло
Наверное, тут нужно что-то делать через network. Но во всех доках используется обычный практически такой докерфайл
