Why does my node app process keep getting stopped when I use forever?
Solution 1
I was able to resolve my problem thanks to this answer on a similar question: https://stackoverflow.com/a/24914916/1791634
The process kept running when I used forever start ./bin/www
instead of passing app.js
It remains to be seen whether this causes any trouble down the road.
Solution 2
I'm guessing the process stops after you disconnect from ssh?
Try running forever with nohup
first.
nohup forever start app.js
When you disconnect from ssh the server kills all your shell's child processes. nohup
disconnects a process from its parent shell.
Solution 3
For me, I had to use "sudo forever" for it to work.
Brandon
Updated on July 09, 2022Comments
-
Brandon almost 2 years
On a free-tier Amazon EC2 instance, I set up a simple node.js Hello World app running on express.
If I run
npm start
, my app runs fine and I can hit it from my browser, and I see the following output:> [email protected] start /home/ec2-user/app > node ./bin/www
I have installed the forever tool globally. When I run
forever start app.js
, I see:warn: --minUptime not set. Defaulting to: 1000ms warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms info: Forever processing file: app/app.js
However, when I check
forever list
, I see that the process has stopped:info: Forever processes running data: uid command script forever pid id logfile uptime data: [0] 2v0J /usr/local/bin/node app.js 2455 2457 /home/ec2-user/.forever/2v0J.log STOPPED
This is the only message in the log:
error: Forever detected script was killed by signal: null
I'm unable to find any other log information. Why does it keep immediately stopping?
EDIT: I tried running it as
nohup forever start app.js
and got the same problem. I'm running theforever start
and theforever list
in the same ssh session, one after the other. The app's process seems to stop immediately. -
Brandon over 9 yearsI'm running
forever start app.js
andforever list
in the same ssh session, and it is always immediately stopped. I just tried running it asnohup forever start app.js
and got the same result: the forever process was stopped as soon as I checked it. -
Daniel over 9 yearsCheck the log file. Is your node process dying from a script error?
-
Brandon over 9 yearsIf I check the logfile shown in
forever list
, all I see is the error listed in the above question. Is there another log file I can check? -
Roberto14 almost 8 yearsI believe
&
it's missing on nohup command.. ie:nohup forever start app.js &
-
suku about 7 yearswhy should they even allow
forever ./bin/www
if the objective to use forever is achieved only ifforever start ./bin/www
is used -
Diptox about 7 yearswithout the start , you can see the log on the SSH console
-
Gherman over 6 yearsBut why do I
forever myscript.js
if I can justnode myscript.js
without using forever? -
Hbas over 5 yearsYou have to invoke "forever start <your_script_file.js>". In your case (as seen when you do npm start) the file is located at ./bin/www , not at "app.js". Regards