18 lines
626 B
Docker
18 lines
626 B
Docker
ARG ENV="dev"
|
|
|
|
FROM node:24-alpine
|
|
ARG ENV=$ENV
|
|
RUN apk add --no-cache ca-certificates && update-ca-certificates
|
|
|
|
ENV GENERATE_SOURCEMAP=false
|
|
ENV NODE_OPTIONS=--max-old-space-size=16384
|
|
WORKDIR /app
|
|
COPY package.json package-lock.json ./
|
|
# Vite 8 rolldown ile bundle ediyor; workbox-build hâlâ rollup çekiyor.
|
|
# Alpine (musl) native binding'leri lockfile'da optional olduğu için ikisi de elle kuruluyor.
|
|
RUN npm i && \
|
|
npm install @rolldown/binding-linux-x64-musl @rollup/rollup-linux-x64-musl --save-dev && \
|
|
npm rebuild rollup
|
|
COPY . .
|
|
RUN npm run build:production -- --mode $ENV
|
|
CMD ["npm", "run", "preview"]
|