2014-11-18 8 views
1

저는 리눅스에 익숙하지 않고 우분투 12.04를 사용하여 리니어 모드에서 서버를 설정했습니다.Nodejs는 영원히 부팅 할 때 작동합니다. - watch가 작동하지 않습니다.

난에 "myconfig.conf"파일을 만든

을/etc/초기화 /가 포함 된 다음

start on startup 
stop on shutdown 
respawn 

exec sudo -u myUser /usr/local/bin/forever start -w /home/myUser/myProject/server.js 

나는 (어떤 경우에는 내가 노드에 액세스 할 수있는 리눅스 서버 노드가 시작되지 않았습니다 재부팅 할 때 서버가 죽기 전에 1 초 동안). 시계 옵션 ("-w")없이 이것을 실행하면 정상적으로 작동합니다. 문제없이 수동으로 실행할 때 watch 옵션을 사용할 수도 있으며, conf 파일을 사용할 때만 발생합니다. 거기에 내가 지정해야 할 몇 가지 경로가 있으므로 영원히 어떤 파일을 볼 수 있는지 알고 있습니까? 사전에

감사합니다!

답변

0

나는 forever-service과 nodemon을 사용하고 chkconfig 유틸리티를 사용하여 재부팅시 시작되도록합니다. 예를 들어

:

이 영원히 서비스 명령은 다음을 매번 응용 프로그램의 DIST/자산 폴더에 JSON 또는 raml 파일이 수정되어, server.js 스크립트 (10 초 기다린 후 노드 응용 프로그램을 다시 시작) :

$ forever-service install raml --script server.js -f " -c nodemon" -o " --delay 10 --watch dist/assets -e json,raml --exitcrash" -e "PATH=/usr/local/bin:$PATH" 

그럼 서버 재부팅을 시작하도록 서비스를 설정할 수 있습니다

$ chkconfig --add raml 
$ chkconfig raml on 
+0

이 답변 주셔서 감사합니다! 다시 부팅 할 때 서비스가 시작되는 다른 방법 (정확하게 내 솔루션을 생각하지 마십시오)을 찾았지만 현재는 감시 메커니즘이 없습니다. 나는 확실히 당신의 해결책을 살펴볼 것입니다. –