You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Remix项目执行npm install时出现ENOMEM错误求助

解决npm install时的ENOMEM(内存不足)错误

针对你在Remix JS项目执行npm install时出现的ENOMEM错误,且服务器CPU、内存、swap全被占用的情况,可尝试以下方案:

1. 释放系统闲置资源

  • 打开htop定位高资源占用的非必要进程(比如闲置的构建任务、后台服务),用kill <进程PID>终止(注意避免关闭系统核心进程)
  • 若为服务器环境,可临时暂停非核心服务(如nginx、测试用数据库等,操作前确认不影响业务)

2. 优化npm安装的内存占用

  • 使用npm ci替代npm install:npm ci严格依据package-lock.json安装,跳过依赖解析步骤,内存消耗更低
  • 限制npm并行下载数:执行npm config set maxsockets 4,减少同时下载的包数量,降低内存负载
  • 临时禁用锁文件解析:执行npm install --no-package-lock,避免生成或解析锁文件的额外内存开销(仅临时使用)
  • 处理依赖版本冲突:若存在peer依赖冲突,可尝试npm install --legacy-peer-deps,减少冲突解析的内存消耗

3. 扩容交换内存(Swap)

若之前添加的1G Swap仍不足,可扩容:

# 关闭现有swap
sudo swapoff /var/swap.1
# 创建2G大小的swap文件
sudo dd if=/dev/zero of=/var/swap.2 bs=1M count=2048
# 格式化并启用新swap
sudo mkswap /var/swap.2 && sudo swapon /var/swap.2

可选:编辑/etc/fstab添加以下内容,让swap开机自动挂载:

/var/swap.2 swap swap defaults 0 0

4. 精简项目依赖(长期优化)

  • 检查package.json,移除未使用的依赖(尤其是开发依赖中的冗余工具)
  • 用npm ls查看依赖树,找出体积过大或重复的依赖,替换为轻量替代包

内容的提问来源于stack exchange,提问作者Wakil Ahmed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 16:32:35