npm 安装在 EC2 中永远挂起

问题描述 投票:0回答:4

尝试在AWS EC2上部署React应用程序。 我使用的是 apache,所以我在 /var/www/html 下得到了 git clone。

我部署其他项目时没有任何问题, 但是当我

npm install
在这个新项目文件夹中时,几秒钟内(当它安装 webpack 时),它只是停留在同一点并显示相同的消息。

它永远卡在那里,任何其他命令都不起作用。所以我必须强制退出终端。之后,我在 10 - 20 分钟内无法连接我的 EC2 实例。

我尝试了

npm install --verbose
,删除package-lock.json,
npm config set registry http://registry.npmjs.org/ --global
npm cache verify
......没有任何效果。

真是令人沮丧。 我不知道我该怎么办。任何建议将不胜感激。

amazon-ec2 npm-install
4个回答
38
投票

就我而言,我必须在我的微型 ec2 实例上创建一个交换文件。我的 npm 安装挂起并最终被杀死。一旦我使用交换文件增加了内存,一切都工作正常!

我使用的命令:

fallocate -l 4G /swapfile
chmod 600 /swapfile
mkswap  /swapfile
swapon /swapfile
swapon  --show
free -h

要使交换文件在重新启动后保持不变(以 root 身份运行):

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

5
投票

您使用什么类型的 EC2 实例?查看监控数据、cpu使用率和内存消耗 根据我的经验,如果您有很多依赖项,“npm install”很容易挂在 EC2 微型实例上。


2
投票

避免使用

npm install
,如果它的微实例尝试
yarn install
,它将以较小的CPU使用量完成相同的工作

当我使用

npm i
我的实例环聊时,我必须使用纱线重新启动它,它才能顺利工作


0
投票

另一个解决方案是将实例类型从微型升级到中型并执行“npm install”。完成后,将介质恢复为微量。但从微型升级到中型会涉及一些成本。

© www.soinside.com 2019 - 2024. All rights reserved.