Issue
I'm trying to deploy a Laravel project to my server with this specs:
Everything was fine but a step, as I use ReactJS with Laravel I have to run npm run dev to let webpack build my assets files. (This is just the step to build the view, it run fine on my local machine and my friend's, with the different of os, MacOS and Ubuntu).
But when I run npm run dev
the system either hang like this
[spyets@vultr current]$ npm run dev
> @ dev /home/spyets/public_html/yamlive/releases/3
> npm run development
> @ development /home/spyets/public_html/yamlive/releases/3
> cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js
or show this error
Exit Code: 254 (Unknown error)
Host Name: development
================
bash: fork: retry: No child processes
bash: fork: retry: No child processes
bash: fork: retry: No child processes
bash: fork: retry: No child processes
bash: fork: Resource temporarily unavailable
I don't know if this give you more information, I run a vtop (a terminal management tool?) and every time I run the npm run dev
command, vtop
just crashed
What I tried:
- reboot the server
- reinstall nodejs ( I install nodejs directly with
yum
not usingnvm
) - upgrade nodejs from 12.20.2 to 13.14.0 ( as it currently in 13.14.0 )
I'm new to Centos and deployment.
Edit
- I also tried to make swapfile and add 3GB of swap
- I tried remove node_modules and reinstall with npm install multiple times
- Running both
npm run dev
andnpm run prod
resulted in failed or crash
Solution
After a lot of google and inspects, I found out that my system user
( ssh user
) have been create with limited access to the os resources.
My user config file was located in /etc/security/limits.d/example_user.conf
example_user soft nproc 40
example_user hard nproc 40
example_user soft nofile 150
example_user hard nofile 150
My Solution:
I backed up the file, deleted it in the /etc/security/limits.d/
directory and reboot the system.
The npm
command successfully running now.
I read this document to find out about the error.
limits.d configuration document
Answered By - Brody Answer Checked By - Mary Flores (WPSolving Volunteer)