Node.js · Middle · Запитання 62 з 75
Чому в Dockerfile для Node.js-застосунку package.json і lock-файл копіюють раніше за код?
COPY package.json package-lock.json ./
RUN npm ci --omit=dev
COPY . .- 1Бо
npm ciвидаляє код - ✓Правильна відповідь: Щоб Docker закешував шар
npm ciі не перевстановлював пакети, коли змінюється лише код - 3Цього вимагає синтаксис Docker
Пояснення
Кожна інструкція - кешований шар. Також запускайте застосунок не від root, беріть невеликий базовий образ і додайте .dockerignore для node_modules.