FROM node:20-alpine

WORKDIR /app

COPY package.json package-lock.json ./
RUN npm ci --omit=dev && node -e "require('express')"

COPY server.js ./
COPY src ./src
COPY public ./public
COPY locales ./locales

RUN chown -R node:node /app
USER node

ENV PORT=3000
EXPOSE 3000

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