38 lines
842 B
Docker
38 lines
842 B
Docker
# develop stage
|
|
FROM node:22-alpine AS develop-stage
|
|
|
|
ENV TZ=Europe/Prague
|
|
|
|
WORKDIR /app
|
|
RUN yarn global add @quasar/cli
|
|
|
|
COPY package.json yarn.lock ./
|
|
RUN yarn --production=false
|
|
RUN npx update-browserslist-db@latest
|
|
COPY . .
|
|
|
|
# build stage
|
|
FROM develop-stage AS build-stage
|
|
ENV NODE_ENV production
|
|
ENV API_URL "https://api.poletani.cz"
|
|
ENV GOOGLE_MAPS_API_KEY "AIzaSyAfTU1VntF9rp2D9TR4CFXIMALF5GLgsio"
|
|
|
|
RUN quasar build -m ssr
|
|
RUN cp /app/dist/ssr/server/server-entry.mjs /app/dist/ssr/server/server-entry.js
|
|
|
|
FROM node:22-alpine AS production-stage
|
|
|
|
ENV NODE_ENV production
|
|
ENV TZ=Europe/Prague
|
|
|
|
EXPOSE 3000
|
|
WORKDIR /app
|
|
|
|
COPY process.yml /app
|
|
COPY --from=build-stage /app/dist/ssr/package.json /app
|
|
RUN yarn global add pm2 && yarn && yarn cache clean
|
|
|
|
COPY --from=build-stage /app/dist/ssr /app
|
|
|
|
CMD ["pm2-runtime", "/app/process.yml"]
|