Запуск установки NPM во время сборки Docker в контейнере Windows - PullRequest
0 голосов
/ 10 октября 2019

Я пытаюсь запустить команды установки NPM из моего Dockerfile во время docker build в контейнере Windows. Проблема в том, что NPM не может разрешить реестр пакетов, и фактически ни один домен не может быть разрешен, потому что DNS не настроен должным образом.

Я попытался выполнить команду RUN в файле Docker для обновления DNS: RUN netsh interface ip set dns "Ethernet 2" static 8.8.8.8 но, похоже, он не работает, хотя сборка завершается правильно.

Возможно ли это вообще. Обратите внимание, что я хочу добиться этого из Dockerfile во время сборки Docker. Запуск контейнера с --dns 8.8.8.8 работает нормально и т. Д., Но это не моя цель.

РЕДАКТИРОВАТЬ: Добавление образца Dockerfile

FROM randomimage:latest

COPY NodeDir C:/NodeDir
SHELL ["cmd", "/S", "/C"]
RUN .\node-vX.msi /quiet

# I also tried with SHELL ["netsh", "interface", "ip"], no luck
RUN netsh interface ip set dns "Ethernet 2" static 8.8.8.8
RUN npm i gulp -g
CMD cmd
...