1. Einführung in die allgemeine Bereitstellungsmethode der NodeJS -Anwendung
Schließlich wird die Bereitstellung von NodeJS -Anwendungen gestartet. Kopieren Sie den Quellcode über Git in das Verzeichnis
Kopieren Sie den Code wie folgt:/root/bereitstellen/movie
Dann machen Sie den Befehl:
Die Codekopie lautet wie folgt:
~ CD/root/Bereitstellung/Film
Knoten ./app.js
In der obigen Methode wird das NodeJS -Programm in der aktuellen Konsolenschnittstelle ausgeführt und die Anwendung wird auch gestoppt, sobald die Konsole abgeschlossen ist. Ändern wir den Befehl, um das Programm im Hintergrund ausführen zu lassen
Die Codekopie lautet wie folgt:
~ Node ./app.js &
[1] 21333
[2013-06-21 09: 38: 30.696] [Info] Konsole-Start App: http://vevb.com
[2013-06-21 09: 38: 30.700] [Info] Konsole-Express Server an Port 3000 Hören 3000
Auf diese Weise wird das Programm im Hintergrund gestartet. Der Prozess läuft normal und ich muss nicht zu viel tun.
Was ist, wenn ich dieses Programm stoppen möchte? Finden Sie den NodeJS -Systemprozess und töten Sie ihn.
Die Codekopie lautet wie folgt:
~ ps -aux | Grep -Knoten
Wurzel 21333 0.6 3.7 909200 38292 Punkte/0 SL 09:38 0:00 Node App.js
~ töten -9 21333
Direkte gewalttätige Lösung. Wie großartig es wäre, wenn es die NodeJS -Anwendung wie einen Systemdienst starten und schließen könnte! Als nächstes werden wir Upstart verwenden, um NodeJS -Anwendungen in Systemdienste zu integrieren.
2.. In ein Upstart -Task -Skript in Einklang bringen
Die Codekopie lautet wie folgt:
~ vi /etc/init/nodejs-moive.conf
Beschreibung "node.js vevb.com"
Starten Sie mit dem Start
Stoppen Sie beim Herunterfahren
Skript
Export Home = "/root/bereitstellen/movie" "
echo $$> /var/run/moiveme.pid
exportieren node_env = Produktion
exec/usr/bin/node /root/deploy/movie/server.js
#Log Ausgabe
#exec/usr/bin/node /root/deploy/movie/server.js >> /var/log/moiveme.log 2> & 1
Endskript
Skript vor dem Start
echo "[` Datum -U +%y-%M-%dt%T.%3nz`] (sys) starten ">> /var/log/moiveme.log
Endskript
Vor-Stop-Skript
rm /var/run/moiveme.pid
echo "[` Datum -U +%y-%M-%dt%T.%3nz`] (sys) Stopping ">> /var/log/moiveme.log
Endskript
3. Verwenden Sie Upstart, um NodeJS -Anwendungen zu verwalten
Starten Sie die NodeJS-Moive-Anwendung (das Task-Skript oben), Prozess-ID: 21257
Die Codekopie lautet wie folgt:
~ Starten Sie Nodejs-Moive
NodeJS-Moive-Start/Running, Prozess 21257
~ Tail -f /var/log/moiveme.log
[2013-06-21T09: 21: 17.122z] (Moive.me) Start
~ PS Aux | Grep -Knoten
Wurzel 21257 8.0 3.7 909204 37824? SSL 09:21 0:00/usr/bin/node /root/deploy/movie/server.js
Überprüfen Sie den laufenden Status, der Prozess 21257 wird normal ausgeführt
Die Codekopie lautet wie folgt:
~ Status nodejs-moive
NodeJS-Moive-Start/Running, Prozess 21257
Töten Sie NodeJS-Anwendungsprozess 21257 und verwalten
Die Codekopie lautet wie folgt:
~ töten -9 21257
#Automatisch starten Sie das Protokoll neu
~ Tail -f /var/log/moiveme.log
[2013-06-21T09: 21: 33,662Z] (Moive.me) Start
# Überprüfen Sie den Systemprozess und stellen Sie fest, dass sich die ID geändert hat
~ ps -aux | Grep -Knoten
Wurzel 21280 9.1 3.7 909204 37704? SSL 09:21 0:00/usr/bin/node /root/deploy/movie/server.js
# Überprüfen Sie den Prozessstatus, die Prozess -ID hat sich tatsächlich geändert und wird automatisch abgeschlossen
~ Status nodejs-moive
Nodejs-Moive-Start/Running, Prozess 21280
Dies macht es für uns sehr bequem, NodeJS -Anwendungen in Form von Systemdiensten über den Start zu verwalten. Es wird einfach zu bedienen und zu warten! !