# Use latest Node.js LTS (Alpine = small image)
FROM node:22-alpine

WORKDIR /app

# Copy package manifests first (better Docker layer cache)
COPY package.json package-lock.json ./

# Install exact versions from lock file
RUN npm ci --omit=dev

# Copy app source
COPY application/ ./application/
COPY server.js ./

RUN mkdir -p /app/uploads

EXPOSE 3000

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