Это мой файл выскочки /etc/init/myapp.conf
:
description "Example of starting Node with Upstart and Forever"
start on filesystem or runlevel [2345]
stop on runlevel [06]
expect fork
console output
setuid lwood
env HOME=/home/lwood
script
cd $HOME
exec forever -a -l /home/lwood/myapp/applog.log \
start /home/lwood/myapp/app.js
end script
pre-stop script
cd $HOME
exec forever stop /home/lwood/myapp/app.js
end script
Ты знаешь почему $ sudo restart myapp
это только остановка службы? После остановки служба не запускается. Таким образом, он имеет тот же эффект, что и $ sudo stop myapp
.
Делать $ sudo stop myapp
а потом $ sudo start myapp
хотя работает нормально. Интересно, почему перезапуск ведет себя иначе?
Я использую Ubuntu 12.04.
Я предполагаю, что это как-то связано с выводом сценария, вызывающим остановку сценария выскочки.
Если вы будете следовать руководству по эта страница они, кажется, рекомендуют связать стандартный вывод с файлом журнала.
env LOG="/var/log/my-application.log"
exec forever stop /home/lwood/myapp/app.js >> $LOG