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;\
    location / {\
        return 301 /lnbox/;\
    }\
    location /lnbox {\
        alias /usr/share/nginx/html/lnbox;\
        index index.html index.htm;\
        try_files \$uri \$uri/ /lnbox/index.html;\
    }\
}" > /etc/nginx/conf.d/default.conf

EXPOSE 80
