services:
  app:
    build:
      dockerfile: docker/dev/app/Dockerfile
    volumes:
      - .:/srv/app
      - .env.dev:/srv/app/.env
      - /srv/app/.git/
      - /srv/app/.dioxus/
      - /srv/app/dist/
      - /srv/app/debug/
      - /srv/app/node_modules/
      - /srv/app/static/
      - /srv/app/target/
      - /dev/null:/srv/app/docker-compose-dev.yml
      - /dev/null:/srv/app/docker-compose-prod.yml
    restart: always
    ports: [ "8000:8000" ]
    depends_on: [ "db" ]

  db:
    image: postgres:16.4-bookworm
    volumes: [ "db_data:/var/lib/postgresql/data" ]
    ports: [ "5432:5432" ]
    environment:
      POSTGRES_DB: todo_baggins
      POSTGRES_USER: app
      POSTGRES_PASSWORD: app
    restart: always

volumes:
  db_data: