일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- A-Frame
- JS
- vuex
- promise
- vue-template-compiler
- version mismatch
- PHP
- PDO
- JavaScript
- EM6
- CI/CD
- Component
- npx
- aframe
- vue
- array
- web
- bootstrap
- javscript
- auth0
- WebVR
- 3d
- Node
- 상태관리
- AR
- Three.js
- vuetify
- VR
- package-lock.json
- WebXR
- Today
- Total
대가는 결과를 만든다
node 서버 windows에서 서비스로 실행 본문
linux에서의 서비스 실행은 익숙하지만 윈도우에서 서비스로 실행하는 것은 생소했다.
forever 모듈로 실행하면 되는 줄 알았지만, 로그인 세션을 종료하면 일반실행과 같이 node서버도 죽었다.
윈도우에서 서비스로 실행하기 위해서는 node-windows라는 모듈을 이용해야한다.
링크 : https://github.com/coreybutler/node-windows
npm install -g node-windows
npm link node-windows
한 후 해당 모듈을 이용해 스크립트를 작성한다.
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: __dirname+'/ServerIndex.js', //실행 메인 서버 스크립트 경로
nodeOptions: [ '--harmony', '--max_old_space_size=4096' ] }); // Listen for the "install" event, which indicates the // process is available as a service. svc.on('install',function(){ svc.start(); }); svc.install();
이렇게 ex) WindowsServiceIns 스크립트를 작성한뒤 이 스크립트를 node WindowsServiceIns.js 실행하면, 서비스 실행하기 위한 권한 창이 몇개 뜨고 허용하면 서비스 창에서 해당 서비스가 설치되어 등록되고 시작되는 것을 확인할 수 있다.
서비스가 실행 되자마자 중지된다면, 무언가 오류가 있는 것! 이벤트 뷰어에서 무슨 이벤트인지 확인하여 대응하면 된다. (보통은 script: 경로가 잘못되어서 발생!)
'개발 > Node.js' 카테고리의 다른 글
[이슈]npm install error (0) | 2020.02.19 |
---|---|
[개념정리] npx란? (4) | 2019.12.06 |