FROM docker.io/node:alpine AS build
WORKDIR /blog

COPY package.json package-lock.json ./
RUN npm ci

COPY . .
RUN npm run build

FROM docker.io/nginx:alpine-slim

RUN addgroup -g 3000 tymur999 && \
    adduser -u 3000 -G tymur999 -S -D tymur999 && \
    mkdir -p /var/www/html && \
    chown -R tymur999:tymur999 /var/cache/nginx /var/log/nginx /etc/nginx/conf.d /var/www/html && \
    touch /tmp/nginx.pid && \
    chown tymur999:tymur999 /tmp/nginx.pid

USER tymur999:tymur999

COPY --from=build --chown=tymur999:tymur999 /blog/build/ /var/www/html/
COPY --chown=tymur999:tymur999 nginx.conf /etc/nginx/nginx.conf

EXPOSE 8000
