services:
  postgresql:
    image: postgres:14.2-alpine
    environment:
      POSTGRES_USER: pandasai
      POSTGRES_PASSWORD: password123
      POSTGRES_DB: pandasai-db
    ports:
      - "5430:5432"
    volumes:
      - ./pgdata:/var/lib/postgresql/data
    networks:
      - pandabi-network

  server:
    container_name: pandabi-backend
    build:
      context: ./server
      dockerfile: Dockerfile
    ports:
      - "8000:8000"
    restart: always
    env_file:
      - ./server/.env
    depends_on:
      - postgresql
    networks:
      - pandabi-network
    command: "/bin/bash startup.sh"

  client:
    container_name: pandabi-frontend
    build:
      context: ./client
      dockerfile: Dockerfile
    ports:
      - "3000:3000"
    restart: always
    env_file:
      - ./client/.env
    environment:
      - NODE_ENV=development
    command: npm run start
    networks:
      - pandabi-network

networks:
  pandabi-network:
    driver: bridge