前言
在服务器上跑前端流水线npm install的时候总是好一次坏一次,有点莫名其妙,因为node版本用的和本地版本是一样的,本地没有出现啥问题。不过不一样的是,我们服务器是在内网的,网络有管控,所以npm源不能用官方源,也不能用淘宝源,是内部搭建的私有源,问题就出现了在这里。
问题
流水线npm install用的命令:
// --unsafe-perm=true --allow-root 权限不够时,会以root用户身份运行
// --legacy-peer-deps 不强关联版本安装
npm install --unsafe-perm=true --allow-root --legacy-peer-deps --verbose
首先利用--verbose打印详细日志,提示
npm ERR! code EPIPE
npm ERR! syscall write
npm ERR! errno -32
npm ERR! write EPIPE
相关截图如下
解决方法
在npm install命令后增加 --no-audit可以解决,意思是忽略漏洞审计
npm install --unsafe-perm=true --allow-root --legacy-peer-deps --no-audit
为什么呢
首先npm audit 获取详情的漏洞报告
而在服务器执行npm audit fix 修复漏洞 也会提示这个错误
想了解具体关于npm audit命令的可以看 juejin.cn/post/716434…