Ускорьте сборку за счет кэширования пакетов в контейнере Docker - PullRequest
0 голосов
/ 05 июля 2018

У меня есть идея, которую я еще не завершил. В Dockerfile у меня есть:

FROM node:10

WORKDIR /app

RUN "*cache node modules here*"
RUN e.g. npm cache add foo bar baz

COPY package.json .
RUN npm i --cache-min 9999999 --loglevel=warn

COPY . .

CMD node dist

Как создать высокопроизводительные файлы Docker, кэшируя некоторые модули / пакеты Node.js перед установкой npm?

Есть какой-то трюк, который может это сделать?

1 Ответ

0 голосов
/ 05 июля 2018

Это готовая функциональность Docker. Если ваш Dockerfile говорит

FROM node:10
WORKDIR /app
COPY package.json .
RUN npm install

COPY ...

затем, если package.json не изменился, Docker пропустит шаг RUN npm install и использует образ файловой системы, полученный в результате этого.

...