우분투 (13.10) 서버에 일련 번호 node.js
개의 스크립트를 설치하고 가능한 한 많이 실행하고 서버 재부팅시 자동으로 다시 시작합니다. 우리는 몇 가지 다른 기술을 시도했지만 아직 작동하는 해결책을 찾지 못했습니다.영원히 함께 Upstart 실행
는 설정 : 포트 80에서 실행되는 스크립트 없음, 대신 우리는
Node.js
파일이 현재 우리는 그것들을 설정 한 /usr/lib/sites/path/Node
에서 실행 및 실행 개별적으로 영원히 동안 사용하는 8000 이상의 포트를 실행하지
forever start server_process.js
우리는 이것들을 실행하려면 : 간단하게 스크립트가 포함 된 폴더의 맥락에서 다음을 실행하여, 잘 특권 (그러나 루트) 사용자의 컨텍스트에서 실행 서버를 시작할 때 스크립트를 사용하고 필요할 때 나중에 다시 시작할 수있는 기능이 있습니다.
Upstart는 해결책 인 것처럼 들리지만 아직 작동시키지 못했습니다. 다음 스크립트는
무딘 시행 착오를 통해description "Our app"
version "1.0"
author "Nautilytics"
start on startup
stop on shutdown
expect fork
env FOREVER_PATH=/usr/bin/forever
env APPLICATION_DIRECTORY=/usr/lib/sites/path/Node
env APPLICATION_START=ourapp.js
env LOG_PATH=/var/log/ourapp.log
chdir /usr/lib/sites/path/Node
script
exec $FOREVER_PATH start --sourceDir $APPLICATION_DIRECTORY -f -v $APPLICATION_START >> $LOG_PATH 2&>1
end script
은, 몇 번 우리가하지 않을 수있는 다른 파일 (ourapp.js
에 의해 요구되는) 것을 나타냅니다 오류를 얻을 수 있었다 ... 다음, 시작의 원인을 알려주는없이 중지 마치 chdir
이 효과가 없거나 영원히 시작된 것처럼 보입니다.
왜 영원히 필요합니까? Upstart가 요구 사항을 처리 할 수 있습니다. 반면에 Upstart는 [systemd] (https://wiki.ubuntu.com/systemd)의 [replaced] (http://www.markshuttleworth.com/archives/1316) 따라서 Upstart는 가기. –
우리는 영원히 조금 중복되었고 upstart에서 respawn이이 작업을 처리 할 수 있다고 결정했습니다. – hotshotiguana