diff --git a/Dockerfile b/Dockerfile index 83b77a6fea..056e6cf073 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,7 +19,12 @@ WORKDIR /app USER node -COPY --chown=node:node . . +COPY --chown=node:node package.json package-lock.json ./ +COPY --chown=node:node api/package.json ./api/package.json +COPY --chown=node:node client/package.json ./client/package.json +COPY --chown=node:node packages/data-provider/package.json ./packages/data-provider/package.json +COPY --chown=node:node packages/data-schemas/package.json ./packages/data-schemas/package.json +COPY --chown=node:node packages/api/package.json ./packages/api/package.json RUN \ # Allow mounting of these files, which have no default @@ -29,7 +34,11 @@ RUN \ npm config set fetch-retry-maxtimeout 600000 ; \ npm config set fetch-retries 5 ; \ npm config set fetch-retry-mintimeout 15000 ; \ - npm install --no-audit; \ + npm ci --no-audit + +COPY --chown=node:node . . + +RUN \ # React client build NODE_OPTIONS="--max-old-space-size=2048" npm run frontend; \ npm prune --production; \ @@ -47,4 +56,4 @@ CMD ["npm", "run", "backend"] # WORKDIR /usr/share/nginx/html # COPY --from=node /app/client/dist /usr/share/nginx/html # COPY client/nginx.conf /etc/nginx/conf.d/default.conf -# ENTRYPOINT ["nginx", "-g", "daemon off;"] \ No newline at end of file +# ENTRYPOINT ["nginx", "-g", "daemon off;"]