FROM node:20-alpine
WORKDIR /app
COPY package.json package-lock.json* ./
RUN npm install
COPY . .
RUN npm run build
# Expose port for HTTP server
EXPOSE 3000
# Run HTTP server for cloud deployment (has /health endpoint)
CMD ["node", "dist/server.js"]