CloudLinux服务器npm ci执行停滞问题排查求助
npm ci停滞无响应的排查方向(CloudLinux + Node.js 16/npm8.15环境)
先解决canvas@2.10.1安装失败(退出码134)的核心问题
- 退出码134通常对应内存不足或进程被系统信号终止,CloudLinux的LVE容器有CPU/内存配额限制,先检查当前用户的LVE资源上限,确认安装canvas时是否触发阈值导致进程被kill
- canvas依赖系统编译工具及图形库,核对服务器是否缺失
gcc-c++、make、libjpeg-devel、libpng-devel等包,手动安装后单独执行npm install canvas@2.10.1 --verbose验证 - 跳过本地编译,使用预编译二进制包:设置环境变量
npm_config_canvas_binary_host_mirror=https://registry.npmmirror.com/-/binary/canvas后再运行npm ci
排查reify:typescript阶段停滞问题
- 测试服务器到npm registry的网络连通性与延迟,执行
curl -v https://registry.npmjs.org/typescript,必要时临时切换国内镜像:npm config set registry https://registry.npmmirror.com - 查看
~/.npm/_logs下的完整日志文件,排查--verbose输出未显示的隐藏错误 - 单独安装typescript验证:
npm install typescript,排除包本身或依赖解析问题 - 检查服务器磁盘空间,执行
df -h确认是否有分区满额导致文件写入停滞
环境差异对比排查
- 执行
npm config list对比本地Windows、GitLab CI的npm配置,排查CloudLinux上是否存在proxy、strict-ssl等特殊配置 - 核对Node.js小版本,确保CloudLinux上的Node.js 16与CI环境完全一致,必要时升级/降级到匹配版本
- 彻底清理残留文件:删除
node_modules、package-lock.json后重新执行npm ci
内容的提问来源于stack exchange,提问作者TomFree
相关产品推荐
相关产品推荐

