Демон NodeJS не запускается при запуске на Raspberry pi

#node.js #linux #bash #debian #daemon

#node.js #linux #bash #debian #демон

Вопрос:

Я создал небольшой демон, который запускает мой API nodejs в качестве службы forever .

Теперь, когда служба запускается и останавливается без каких-либо проблем, я хочу запустить ее при включении Raspberry pi. Мой Raspberry pi работает Raspbian .

Я поместил службу в /etc/init.d/ папку и выполнил update-rc.d myServiceName defaults , но она не запускает службу после загрузки…

Вы можете мне помочь? Вот сценарий:

 #!/bin/sh

export PATH=$PATH:/usr/local/bin
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules

case "$1" in
  start)
  exec forever --spinSleepTime 10000 --sourceDir=/var/domothink -p /var/run/forever start dist/server.js
  ;;

  stop)
  exec forever stop --sourceDir=/var/domothink dist/server.js
  ;;

  status)
  # TODO
  ;;

  default)
  # TODO
  ;;
esac

exit 0
  

Комментарии:

1. Обратите внимание, что init может не иметь того же $PATH, который у вас есть для вашей учетной записи, поэтому он может не найти forever . Вот почему люди склонны указывать абсолютные пути в сценариях инициализации. Попробуйте /whatever/path/to/forever вместо forever

2. Но когда я запускаю сервис вручную, он работает хорошо. без абсолютного пути. Я попробую ваше решение, чтобы указать путь отмены.

Ответ №1:

Я нашел хорошее решение для создания службы nodejs в Debian / Raspbian .

Я установил forever-service пакет с помощью npm и создал службу с помощью этого инструмента.

Это действительно хорошее решение, и оно работает действительно хорошо: https://github.com/zapty/forever-service