services:
  admin:
    image: ${ADMIN_IMAGE:-qms-fe-admin}:${IMAGE_TAG:-local}
    build:
      context: ./admin-app
      dockerfile: Dockerfile
      args:
        VITE_API_URL: ${VITE_API_URL:-http://localhost:8080}
    container_name: qms-fe-admin
    restart: unless-stopped
    ports:
      - "${ADMIN_HOST_PORT:-5000}:80"

  teller:
    image: ${TELLER_IMAGE:-qms-fe-teller}:${IMAGE_TAG:-local}
    build:
      context: ./teller-app
      dockerfile: Dockerfile
      args:
        VITE_API_URL: ${VITE_API_URL:-http://localhost:8080}
    container_name: qms-fe-teller
    restart: unless-stopped
    ports:
      - "${TELLER_HOST_PORT:-3001}:80"

  customer:
    image: ${CUSTOMER_IMAGE:-qms-fe-customer}:${IMAGE_TAG:-local}
    build:
      context: ./customer-app
      dockerfile: Dockerfile
      args:
        NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:8080}
    container_name: qms-fe-customer
    restart: unless-stopped
    ports:
      - "${CUSTOMER_HOST_PORT:-3000}:3000"
    environment:
      QR_TOKEN_SECRET: ${QR_TOKEN_SECRET:-qms-branch-qr-v1}
