2013-03-29 19 views
7

Nie wiem, co powinienem nazwać na serwerze Ubuntu, ale większość czasu pracy w systemie Windows nazywa się usługą do uruchamiania aplikacji na tło.Jak wykonać "usługę" uruchamiając moją aplikację Node.js na serwerze Ubuntu

buduję mój serwer WWW na podstawie node.js, tak aby wdrożyć go na Ubuntu zerwać muszę „usługa” za prowadzenie node.js, chcę „usługi”:

  1. działa na tło
  2. Posiada możliwość automatycznego uruchomienia node.js jeśli mój serwer wWW wywala node.js

normalnie uruchomić aplikację node.js otwierając terminal uruchom plik js. Ale z mojego rozumowania jest to bardziej do celów testowania, ponieważ nie ma gwarancji od terminala do uruchomienia Node.js po awarii.

+5

Musisz użyć 'na zawsze'. Użyj 'npm install -g forever'. Następnie przejdziesz do katalogu aplikacji twojego węzła i uruchomisz, "forever start app.js" –

+3

Sprawdź http://labs.telasocial.com/nodejs-forever-daemon/ – robertklep

Odpowiedz

21

Wiele osób używa na zawsze https://github.com/nodejitsu/forever, która stała się prawie standardem branżowym.

Jeśli korzystasz z systemu Ubuntu, możesz również użyć skryptów init (google 'ubuntu upstart'), które wykonają dokładnie to samo i są gwarantowane, jeśli serwer zostanie kiedykolwiek zrestartowany.

Oto mój przykładowy skrypt startowy, na przykład https://gist.github.com/qbert65536/5271721.

Robi się uruchomić podczas uruchamiania serwera, można również sterować nimi z

startowym MojaApl, stop MojaApl, uruchom MojaApl, gdzie myapp.conf jest nazwa upstart skryptu.

+0

Dzięki za przykładowy skrypt upstart - zawsze założono, że pisanie scenariuszy z wyprzedzeniem byłoby bolesne i nigdy by się nad tym nie zastanowić! – RobM

+0

jak skonfigurować pracę z restartem komputera? –

Powiązane problemy