npm 运行 build 在本地机器上工作正常但在远程 ubuntu 服务器上显示错误
npm run build works fine on local machine but shows error on remote ubuntu server
我正在尝试在 digital ocean 远程 ubuntu 服务器上部署我的 MERN 应用程序。 git 克隆后,我将 npm 安装到我的根文件夹、客户端文件夹和服务器文件夹。但是当我尝试从根文件夹 运行 npm start 时,只有服务器应用程序 运行ning 并且客户端出现错误。所以我 cd 进入客户端文件夹并尝试了命令 npm 运行 build (我也在我的本地机器上做了并且优化的构建成功创建)但是它在远程服务器上显示了以下错误
> client@0.1.0 build /home/nishant/apps/rentaporta/client
> react-scripts build
Creating an optimized production build...
The build failed because the process exited too early. This probably means the system ran out of memory or someone called `kill -9` on the process.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! client@0.1.0 build: `react-scripts build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the client@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/nishant/.npm/_logs/2020-10-27T05_22_30_755Z-debug.log
我删除了node_modules、package-lock.json,也尝试了npm ci命令,但没有任何改善。我的文件夹结构是
root
client
server
下面是我在根文件夹中的 package.json 脚本
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"client-install": "npm install --prefix client",
"server-install": "npm install ---prefix server",
"server": "npm start --prefix server",
"client": "npm start --prefix client",
"build-client": "npm run build --prefix client",
"dev": "concurrently \"npm run server\" \"npm run client\"",
"start": "npm run server-install & concurrently \"npm run build-client\" \"npm run server\""
},
拜托,有人帮帮我。如果您需要更多解释,我准备好根据需要提供更多详细信息。
终于找到问题了。我的远程 ubuntu 服务器有 1GB 内存,但没有交换内存。我使用命令 sudo free -h,发现交换内存为 0。所以,我按照这篇文章 (https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04) 创建交换内存,最后,我的应用程序被部署了。
此外,cd 到您的客户端文件夹并 运行 在终端中执行此命令-
$ export NODE_OPTIONS=--max-old-space-size=8192
我正在尝试在 digital ocean 远程 ubuntu 服务器上部署我的 MERN 应用程序。 git 克隆后,我将 npm 安装到我的根文件夹、客户端文件夹和服务器文件夹。但是当我尝试从根文件夹 运行 npm start 时,只有服务器应用程序 运行ning 并且客户端出现错误。所以我 cd 进入客户端文件夹并尝试了命令 npm 运行 build (我也在我的本地机器上做了并且优化的构建成功创建)但是它在远程服务器上显示了以下错误
> client@0.1.0 build /home/nishant/apps/rentaporta/client
> react-scripts build
Creating an optimized production build...
The build failed because the process exited too early. This probably means the system ran out of memory or someone called `kill -9` on the process.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! client@0.1.0 build: `react-scripts build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the client@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/nishant/.npm/_logs/2020-10-27T05_22_30_755Z-debug.log
我删除了node_modules、package-lock.json,也尝试了npm ci命令,但没有任何改善。我的文件夹结构是
root
client
server
下面是我在根文件夹中的 package.json 脚本
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"client-install": "npm install --prefix client",
"server-install": "npm install ---prefix server",
"server": "npm start --prefix server",
"client": "npm start --prefix client",
"build-client": "npm run build --prefix client",
"dev": "concurrently \"npm run server\" \"npm run client\"",
"start": "npm run server-install & concurrently \"npm run build-client\" \"npm run server\""
},
拜托,有人帮帮我。如果您需要更多解释,我准备好根据需要提供更多详细信息。
终于找到问题了。我的远程 ubuntu 服务器有 1GB 内存,但没有交换内存。我使用命令 sudo free -h,发现交换内存为 0。所以,我按照这篇文章 (https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04) 创建交换内存,最后,我的应用程序被部署了。
此外,cd 到您的客户端文件夹并 运行 在终端中执行此命令-
$ export NODE_OPTIONS=--max-old-space-size=8192