Пакет исправлений с Docker
Я работаю с серверной частью node js и хочу развернуть приложение через докер.
Я изменил два пакета npm, чтобы мое приложение заработало, и автоматически установил эти изменения с помощью npm patch-package с помощью сценария после установки в моем package.json.
"postinstall": "patch-package"
Я установил как postinstall-postinstall, так и patch-package в качестве зависимостей разработчика.
Запуск yarn install и yarn build по отдельности, это отлично работает, но как только я хочу докеризовать это приложение, я получаю сообщение об ошибке на этапе сборки, которое в основном говорит о том, что патч не был применен к node_modules.
Это мой файл докеров:
# stage 1
FROM node as builder
WORKDIR /srv
COPY package.json yarn.lock patches ./
RUN yarn install --frozen-lockfile --unsafe-perm
COPY . .
RUN yarn build
Я действительно не знаю, работает ли сценарий установки пряжи в файле докеров после установки или ошибка возникает только в сценарии сборки пряжи.
заранее спасибо
1 ответ
Как упоминал @donjus в комментариях, патчи копировались в корневой каталог, а не внутрь
patches
.
Решение состоит в том, чтобы изменить:
COPY package.json yarn.lock patches ./
RUN yarn install --frozen-lockfile --unsafe-perm
к
COPY package.json yarn.lock ./
COPY ./patches ./patches
RUN yarn install --frozen-lockfile --unsafe-perm