繁体   English   中英

在Docker容器中预缓存node_modules

[英]pre-cache node_modules in Docker container

令我感到沮丧的是,为使用Node工具链(如Grunt和Gulp)的项目构建CI需要相当长的时间,其中很大一部分是由npm install消耗的。

我试图设置一个Docker镜像,预先出现npm缓存中的所有node_module依赖项(每个都在我的package.json文件中声明的相同的固定版本),但即使这样,构建仍然需要一些所有它真正需要做的就是将npm缓存中的几个目录复制到我的项目的node_modules中。

我已经将cache-min设置为9999999,但它似乎还需要比它需要的时间长得多。

我看起来像local-npmnpm_lazy,但它们似乎超过顶部,前者需要很长时间才能安装 - 我怀疑它正在尝试下载现有的每个单独的npm模块 - 我只需要一个有限的数量而且不需要正在运行Web服务器以从Docker容器中为它们提供服务。

......我错过了什么吗? 必须有一种更快的方式来运行CI构建......

通过使用.npmrc指向docker容器中的npm缓存,我能够使它工作。 我建议你将docker exec放入你的容器并运行npm config list | grep cache npm config list | grep cache以确保使用缓存。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM