FROM node:22-slim

WORKDIR /app

COPY package.json ./
RUN npm install --omit=dev

COPY server.mjs ./

ENV PORT=8935
ENV IMAGE_MCP_OUTPUT_DIR=/app/generated-images

RUN mkdir -p /app/generated-images

EXPOSE 8935

# HEALTHCHECK: use node itself (no curl/wget in node:22-slim)
HEALTHCHECK --interval=15s --timeout=5s --retries=3 --start-period=10s \
  CMD node -e "fetch('http://127.0.0.1:8935/health').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))"

CMD ["node", "server.mjs"]
