docker - 在 Windows 容器中的 Docker 构建期间运行 NPM 安装
问题描述
我正在尝试docker build
在 Windows 容器中从我的 Dockerfile 中运行 NPM 安装命令。问题是 NPM 无法解析包注册表,事实上,由于 DNS 配置不正确,因此无法解析任何域。
我尝试RUN
在 Dockerfile 中运行一个命令来更新 dns:
RUN netsh interface ip set dns "Ethernet 2" static 8.8.8.8
但尽管构建正确完成,但它似乎不起作用。
这甚至可能吗。请注意,我想在 docker 构建期间从 Dockerfile 中实现这一点。运行一个--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
解决方案
推荐阅读
- scrapy - scrapy 中 start_pares 中的 lambda
- java - 如何在 Java 查询中使用 SQL 提示
- python - 从熊猫数据框中获取包含索引名称的列名
- ruby-on-rails-5 - Rails 5.2、master.key、capistrano 部署
- php - 在 Woocommerce 3 中以编程方式在全球范围内更改产品类别的产品价格
- html - 无法在移动设备的标题中居中图像
- gradle - Gradle 使用 SLF4J simple 进行测试,使用 Log4j12 进行运行时
- sql-server - 在 SQL Server 查询中获取第一个较小的时间戳
- javascript - document.getElementById.show() 不是函数
- angular - 如何减小 html2canvas 导出文件的大小