1 |
FROM node:18-buster |
FROM node:22-bookworm |
2 |
|
|
3 |
WORKDIR /app |
WORKDIR /app |
4 |
|
|
5 |
RUN rm -rvf build |
RUN apt-get update |
6 |
RUN rm -rvf node_modules |
RUN apt-get install git build-essential librsvg2-dev libgif-dev giflib-tools libcurl4 libcurl4-gnutls-dev libgtk-3-dev libpango1.0-dev libpng-dev libpng++-dev libpng-tools libjpeg-tools libjpeg-progs libjpeg-dev -y |
7 |
|
|
8 |
COPY package.json . |
COPY package.json ./package.json |
9 |
COPY package-lock.json . |
COPY tsconfig.json ./tsconfig.json |
|
COPY tsconfig.json . |
|
|
COPY init.sh . |
|
10 |
COPY src ./src |
COPY src ./src |
11 |
|
COPY blazew ./blazew |
12 |
|
COPY blaze ./blaze |
13 |
|
COPY blazebuild ./blazebuild |
14 |
|
COPY build.blaze.ts ./build.blaze.ts |
15 |
|
COPY build_src ./build_src |
16 |
|
COPY eslint.config.mjs ./eslint.config.mjs |
17 |
|
COPY vitest.config.mjs ./vitest.config.mjs |
18 |
|
COPY tests ./tests |
19 |
|
|
20 |
RUN npm ci --progress=false --no-audit --loglevel=error |
RUN ./blazew build |
|
RUN npm run build |
|
21 |
|
|
22 |
COPY . . |
FROM node:22-alpine |
23 |
|
|
24 |
|
WORKDIR /app |
25 |
|
|
26 |
|
COPY --from=0 /app/node_modules ./node_modules |
27 |
|
COPY --from=0 /app/build ./build |
28 |
|
COPY --from=0 /app/package.json ./package.json |
29 |
|
COPY ecosystem.config.js ./ecosystem.config.js |
30 |
|
COPY .env.docke[r] ./.env |
31 |
|
COPY config ./config |
32 |
|
|
33 |
EXPOSE 4000 |
EXPOSE 4000 |
34 |
CMD ["npm", "run", "start:node"] |
CMD ["npm", "run", "start:prod", "--", "--no-daemon"] |