FROM node:22-alpine as builder

ENV CI=true

WORKDIR /usr/src/app

COPY . .

RUN npm install pnpm@9 -g && rm -f pnpm-lock.yaml

RUN pnpm install --no-frozen-lockfile

RUN pnpm build

FROM nginx:1.26

COPY --from=0 /usr/src/app/dist /usr/share/nginx/html/lnbox

RUN echo "server {\
    listen 80;\
    server_name localhost;\
    root /usr/share/nginx/html/lnbox;\
    index index.html;\
    location / {\
        try_files \$uri /index.html;\
    }\
}" > /etc/nginx/conf.d/default.conf

EXPOSE 80
