FROM node:18-alpine WORKDIR /app # Install curl for healthchecks RUN apk add --no-cache curl # Copy package files COPY package*.json ./ # Install dependencies RUN npm install 2>/dev/null || npm install --legacy-peer-deps # Copy source code COPY src ./src # Create logs directory RUN mkdir -p logs # Expose port EXPOSE 3000 # Health check HEALTHCHECK --interval=10s --timeout=5s --retries=5 \ CMD curl -f http://localhost:3000/api/health || exit 1 # Start application CMD ["node", "src/index.js"]