Стирание тома Docker Postgres при перезагрузке контейнера

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

docker-compose.yml:

version: "3.8"

services:
  db:
    image: postgres:13-alpine
    env_file:
      - .env.dev
    volumes:
      - pgdata:/var/lib/postgresql/data

  backend:
    build:
      context: ./backend
    command: python manage.py runserver 0.0.0.0:8000
    expose:
      - 8000
    env_file:
      - .env.dev
    volumes:
      - ./backend:/backend
    depends_on:
      - db
      
  frontend:
    build:
      context: ./frontend
      dockerfile: Dockerfile
    volumes:
      - ./frontend:/frontend
      - frontend_build:/frontend/build
    environment:
      CHOKIDAR_USEPOLLING: "true"
    depends_on:
      - backend

  nginx:
    build:
      context: ./nginx
    ports:
      - 80:80
    volumes:
      - frontend_build:/var/www/frontend
    depends_on:
      - backend
      - frontend
      - db

volumes:
  backend_vol:
  pgdata:
  frontend_build:

.env.dev:

POSTGRES_ENGINE='django.db.backends.postgresql'
POSTGRES_DB=test-db
POSTGRES_USER=dev-user
POSTGRES_PASSWORD=dev-pw
POSTGRES_HOST='db'
POSTGRES_PORT=5432

Любые мысли о том, почему это происходит, были бы признательны...

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