FROM node:20-alpine AS builder WORKDIR /app ARG STORE_CORS ARG ADMIN_CORS ARG AUTH_CORS ARG DATABASE_URL ARG REDIS_URL ARG JWT_SECRET ARG COOKIE_SECRET ENV STORE_CORS=$STORE_CORS ENV ADMIN_CORS=$ADMIN_CORS ENV AUTH_CORS=$AUTH_CORS ENV DATABASE_URL=$DATABASE_URL ENV REDIS_URL=$REDIS_URL ENV JWT_SECRET=$JWT_SECRET ENV COOKIE_SECRET=$COOKIE_SECRET ENV NODE_ENV=production COPY package.json package-lock.json ./ RUN npm ci --legacy-peer-deps COPY . . RUN npm run build FROM node:20-alpine WORKDIR /app COPY --from=builder /app . RUN chmod +x start.sh EXPOSE 9000 CMD ["sh", "start.sh"]