Ответ 1
Я также не получал никакого ввода stdout
от любой команды forever
, и это исправление прибило его:
sudo ln -s /usr/bin/nodejs /usr/local/bin/node
Надеюсь, что это поможет кому-то.
Я пытаюсь запустить приложение nodejs на экземпляре Amazon EC2, используя навсегда. Я установил nodejs npm, а затем запустил sudo npm install forever -g
.
Установка не привела к каким-либо ошибкам, поэтому я продолжаю и запускаю свое приложение с помощью forever start server.js
, но ничего не будет делать - ничего не выводит, даже если даже ошибка.
Я также пробовал forever --help
и просто forever
, но ни один из них не дал мне никакого ответа...
При регулярном запуске моего приложения с помощью nodejs - nodejs init.js
он работает так, как ожидалось, но мне нужно запустить его с помощью forever
, чтобы он не отключился при отключении от сервера.
Изменить:
Поскольку единственная проблема, с которой я столкнулся, заключалась в том, что nodejs закрывался, когда я закрыл сеанс терминала на моем сервере EC2, я решил это с помощью команды linux nohup
, как это: nohup sudo nodejs server.js &
Это продолжало работать nodejs в дочернем процессе даже после того, как я закрыл окно терминала.
Спасибо за помощь!:)
Я также не получал никакого ввода stdout
от любой команды forever
, и это исправление прибило его:
sudo ln -s /usr/bin/nodejs /usr/local/bin/node
Надеюсь, что это поможет кому-то.
Я не знаю, поможет ли это, но в качестве альтернативы вы можете использовать upstart
. Создайте script следующим образом:
#this is the upstart service task. move it to /etc/init/nodeapp.conf
description "server for Node App"
author "Neels Grobler"
chdir /root/servers/nodeapp
exec node init.js 1>stdout.log 2>stderr.log
respawn
И запустите его, набрав start nodeapp
. Остановить тип stop nodeapp
. Вы также можете изменить script, чтобы приложение node запускалось при загрузке системы и т.д. Дополнительная информация на upstart.ubuntu.com
Вы должны использовать forever start server.js
не только forever server.js
В окнах, когда вы бежите вечно, как:
forever start app.js
вы можете найти сгенерированный файл журнала в файловой системе по адресу:
C:\Users\USERNAME\.forever\SomeLogFileHere.txt
Файлы журналов восстанавливаются для каждого запуска script с уникальным идентификатором каждого файла. Вы всегда можете проверить, какой файл принадлежит к какому процессу:
forever list
Несколько догадок.
sudo npm install forever -g
, вам может понадобиться sudo
для выполнения навсегда.forever start /home/you/source/server.js
или sudo forever start /home/you/source/server.js