프로그래밍/nuxt.js,node.js
node.js +express + forever
닐리캉
2021. 7. 12. 15:35
1. 사용할 디렉토리 생성 / 프로젝트 초기화
mkdir www-express
cd www-express
//프로젝트 초기화
npm init
2. express 설치
npm install express --save
3. app.js
const express = require('express');
const app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
var server = app.listen(8000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('Server is working : PORT - ',port);
});
4. node서버 시작
node app.js
5. node 종료
//프로세스 id로 종료
lsof -i tcp:8000
forever stop pid
kill -9 pid
6. forever 설치
node.js는 한번 오류가 생기면 프로그램 자체가 에러를 내뱉고 종료되는 특징이 있어서 조금만 실수하면 서버가 죽을 수도 있는 위험이 있는데, forever 명령어를 사용하면 에러가 발생 시 서버가 죽지 않고 자동으로 다시 실행시켜줍니다.
npm install forever -g
7. forever 실행
forever start main.js # forever start -w main.js
// (권장) -w란 watch의 약자이며, 소스코드의 변경이 감지되면 자동으로 node 서버를 재시작 해준다.
오류 - Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
(Use `node --trace-warnings ...` to show where the warning was created)
https://flamingotiger.github.io/backend/devOps/aws-forever/
8. forever list
forever list
9. forever 중지
forever stop 0