1. Nodejs 응용 프로그램의 일반 배포 방법 소개
마지막으로 Nodejs 응용 프로그램 배포가 시작되어 GIT를 통해 소스 코드를 디렉토리에 복사합니다.
다음과 같이 코드를 복사하십시오 :/root/deploy/movie
그런 다음 명령을 내립니다.
코드 사본은 다음과 같습니다.
~ CD/루트/배포/영화
노드 ./app.js
위의 방법에서는 NodeJS 프로그램이 현재 콘솔 인터페이스에서 실행되며 콘솔이 완료되면 응용 프로그램도 중지됩니다. 프로그램이 백그라운드에서 실행되도록 명령을 변경합시다.
코드 사본은 다음과 같습니다.
~ 노드 ./app.js &
[1] 21333
[2013-06-21 09 : 38 : 30.696] [Info] 콘솔-시작 앱 : http://vevb.com
[2013-06-21 09 : 38 : 30.700] [Info] 콘솔-포트 3000에서 익스프레스 서버 청취
이런 식으로 프로그램은 백그라운드에서 시작됩니다. 프로세스가 정상적으로 실행 중이며 너무 많이 할 필요가 없습니다.
이 프로그램을 중단하고 싶다면 어떻게해야합니까? Nodejs 시스템 프로세스를 찾아서 죽입니다.
코드 사본은 다음과 같습니다.
~ ps -aux | grep 노드
루트 21333 0.6 3.7 909200 38292 PTS/0 SL 09:38 0:00 노드 app.js
~ 킬 -9 21333
직접적인 폭력 솔루션. 시스템 서비스와 같은 NodeJS 응용 프로그램을 시작하고 닫을 수 있다면 얼마나 좋을까요! 다음으로, 우리는 신생 기업을 사용하여 NodeJS 응용 프로그램을 시스템 서비스로 캡슐화합니다.
2. 응용 프로그램을 신생 작업 스크립트로 캡슐화하십시오
코드 사본은 다음과 같습니다.
~ vi /etc/init/nodejs-moive.conf
설명 "node.js vevb.com"
스타트 업에서 시작하십시오
종료시 중지하십시오
스크립트
Export Home = "/root/deploy/movie"
echo $$> /var/run/moiveme.pid
내보내기 node_env = 생산
exec/usr/bin/node /root/deploy/movie/server.js
#log 출력
#exec/usr/bin/node /root/deploy/movie/server.js >> /var/log/moiveme.log 2> & 1
엔드 스크립트
사전 스타트 스크립트
echo "[`date -u +%y-%m-%dt%t.%3nz`] (sys) 시작">> /var/log/moiveme.log
엔드 스크립트
사전 스톱 스크립트
rm /var/run/moiveme.pid
echo "[`날짜 -u +%y-%m-%dt%t.%3nz`] (sys) 중지">> /var/log/moiveme.log
엔드 스크립트
3. 신생 기업을 사용하여 NodeJS 응용 프로그램을 관리하십시오
nodejs-moive 응용 프로그램 시작 (위의 작업 스크립트), 프로세스 ID : 21257
코드 사본은 다음과 같습니다.
~ nodejs-moive를 시작하십시오
Nodejs-Moive 시작/실행, 프로세스 21257
~ tail -f /var/log/moiveme.log
[2013-06-21T09 : 21 : 17.122Z] (moive.me) 시작
~ ps aux | grep 노드
루트 21257 8.0 3.7 909204 37824? SSL 09:21 0:00/usr/bin/node /root/deploy/movie/server.js
실행 상태를 확인하십시오. 프로세스 21257이 정상적으로 실행 중입니다
코드 사본은 다음과 같습니다.
~ 상태 nodejs-moive
Nodejs-Moive 시작/실행, 프로세스 21257
Nodejs 응용 프로그램 프로세스 21257을 킬 및 신생 기간을 통해 관리하면 Nodejs-Moive 응용 프로그램이 자동으로 다시 시작됩니다.
코드 사본은 다음과 같습니다.
~ 킬 -9 21257
#automically 로그를 다시 시작합니다
~ tail -f /var/log/moiveme.log
[2013-06-21T09 : 21 : 33.662Z] (moive.me) 시작
# 시스템 프로세스를 확인하고 ID가 변경되었는지 확인
~ ps -aux | grep 노드
루트 21280 9.1 3.7 909204 37704? SSL 09:21 0:00/usr/bin/node /root/deploy/movie/server.js
# 프로세스 상태를 확인하고 프로세스 ID가 실제로 변경되었으며 자동으로 완료됩니다.
~ 상태 nodejs-moive
Nodejs-Moive 시작/실행, 프로세스 21280
따라서 신생 기업을 통해 시스템 서비스 형태로 NodeJS 응용 프로그램을 관리하는 것이 매우 편리합니다. 작동하고 유지하기가 쉽습니다! !