[node.js] 부팅시 node.js 서버 자동 시작

node.js 전문가가 시스템 부팅시 서버를 자동 시작하도록 노드 JS를 구성하는 방법을 알려줄 수 있습니까? Windows를 사용 중입니다.



답변

이것은 node.js에서 구성 할 사항이 아니며 순전히 OS 책임입니다 (귀하의 경우 Windows). 이를 달성하는 가장 안정적인 방법은 Windows 서비스를 사용하는 것입니다.

노드 스크립트를 Windows 서비스로 설치하는 매우 쉬운 모듈 이 있는데 ,이를 node-windows ( npm , github , documentation )라고합니다. 예전에 사용 해본 적이 있고 매력처럼 일 했어요.

var Service = require('node-windows').Service;

// Create a new service object
var svc = new Service({
  name:'Hello World',
  description: 'The nodejs.org example web server.',
  script: 'C:\\path\\to\\helloworld.js'
});

// Listen for the "install" event, which indicates the
// process is available as a service.
svc.on('install',function(){
  svc.start();
});

svc.install();

추신

나는 그것이 매우 유용하다는 것을 발견하여 그 주위에 사용하기 더 쉬운 래퍼 ( npm , github ) 를 만들었습니다 .

설치 :

npm install -g qckwinsvc

서비스 설치 :

> qckwinsvc
prompt: Service name: [name for your service]
prompt: Service description: [description for it]
prompt: Node script path: [path of your node script]
Service installed

서비스 제거 :

> qckwinsvc --uninstall
prompt: Service name: [name of your service]
prompt: Node script path: [path of your node script]
Service stopped
Service uninstalled


답변

Linux를 사용하는 경우 macOS 또는 Windows pm2 가 친구입니다. 클러스터를 매우 잘 처리하는 프로세스 관리자입니다.

당신은 그것을 설치합니다 :

npm install -g pm2

예를 들어, 3 개의 프로세스로 구성된 클러스터를 시작하십시오.

 pm2 start app.js -i 3

그리고 pm2는 부팅시 그들을 시작합니다 :

 pm2 startup

API, 모니터 인터페이스도 있습니다 .

대박

github로 이동하여 지침을 읽으십시오 . 사용하기 쉽고 매우 편리합니다. 영원히 최고의 것 .


답변

내가 틀리지 않은 경우 명령 줄을 사용하여 배치 파일을 사용하여 응용 프로그램을 시작할 수 있습니다. 이 경우 Windows 로그인으로 시작하는 것은 그리 어려운 작업이 아닙니다.

다음 내용으로 배치 파일을 생성하기 만하면됩니다.

node C:\myapp.js

.bat 확장자로 저장하십시오. 여기서 myapp.js는 앱이며,이 예제에서는 C : 드라이브 (경로 지정)에 있습니다.

이제 C : \ Users \ % username % \ AppData \ Roaming \ Microsoft \ Windows \ Start Menu \ Programs \ Startup에있는 시작 폴더에 배치 파일을 던질 수 있습니다.

실행 dailog 상자에서 % appdata %를 사용하여 열고> Roaming> Microsoft> Windows> 시작 메뉴> 프로그램> 시작을 찾습니다.

배치 파일은 로그인시 실행되며 cmd에서 노드 응용 프로그램을 시작합니다.


답변

Windows 작업 스케줄러를 사용하여 수동으로 쉽게 수행 할 수 있습니다.

  • 첫째, 영원히 설치하십시오 .
  • 그런 다음 다음을 포함하는 배치 파일을 만듭니다.

    cd C:\path\to\project\root
    call C:\Users\Username\AppData\Roaming\npm\forever.cmd start server.js
    exit 0
    
  • 마지막으로 로그온 할 때 실행되는 예약 된 작업을 만듭니다. 이 작업은 배치 파일을 호출해야합니다.


답변

node.js 앱을 Windows 서비스로 설치 한 다음 시작할 때 서비스가 실행되도록 설정하는 것이 좋습니다. 이렇게하면 시작 폴더에서 배치 파일을 추가하거나 제거 할 필요없이 Windows 서비스 스냅인을 사용하여 시작 작업을 좀 더 쉽게 제어 할 수 있습니다.

Stackoverflow의 또 다른 서비스 관련 질문은 몇 가지 (apprently) 정말 좋은 옵션을 제공했습니다. Windows 서비스로 node.js를 설치하는 방법을 확인하십시오 . node-windows 는 나에게 정말 유망 해 보입니다. 그 외에 서비스로 실행해야하는 Java 앱에 유사한 도구를 사용했습니다. 그것은 내 인생을 훨씬 더 쉽게 만들었습니다. 도움이 되었기를 바랍니다.


답변

당신은 이것을 시도해야합니다

npm 영원히

https://www.npmjs.com/package/forever


답변

pm2 를 사용 하여 Windows에서 nodejs 프로세스를 시작하고 실행하십시오.

pm2를 시작하도록 작업 스케줄러를 설정하는 방법에 대한이 github 토론을 읽으십시오 : https://github.com/Unitech/pm2/issues/1079