FROM node:18-alpine as builder

WORKDIR /app

COPY package*.json ./
RUN npm install

COPY . .

# Add ARGs for build-time configuration
ARG REACT_APP_API_URL
ARG REACT_APP_OPERATOR_URL

# Build with environment variables
RUN npm run build

FROM nginx:alpine
COPY --from=builder /app/build /usr/share/nginx/html
COPY nginx.conf /etc/nginx/conf.d/default.conf

# Add runtime environment variable support
COPY env.sh /docker-entrypoint.d/
RUN chmod +x /docker-entrypoint.d/env.sh

# Default values for runtime
ENV REACT_APP_API_URL=http://localhost:3001
ENV REACT_APP_OPERATOR_URL=http://localhost:8080

EXPOSE 80
CMD ["nginx", "-g", "daemon off;"] 