본문 바로가기
코딩 공부/node.js

PM2를 이용한 웹서버 확인하기, 그리고 오류(?)

by Camel_coding_food 2022. 2. 9.
반응형

 이번에는 PM2를 이용해 좀 더 편한 nodejs 코딩을 알아보겠습니다. 참고로 저는 에디터로 아톰(atom)을 씁니다.

PM2를 알기 전까지는 항상 코드 작성 -> Ctrl S -> cmd에서 웹서버 종료 -> 웹서버 다시 실행 -> 페이지 새로고침 이 과정을 계속 반복했습니다. 그러던 와중 PM2 라는 기능이 있더라고요. PM2는 코드 저장만 하면 웹서버를 자동으로 새로 고침하여 저 모든 과정을 생략해주는 기능입니다.

 

 사용 방법은 간단합니다. 윈도우 검색창에 cmd 를 친 후, cmd 위에서 오른쪽 클릭하여 관리자 권한으로 실행 클릭,

pm2 start main.js --watch

를 입력하면 됩니다.

 

PM2를 통한 콘솔 로그기록을 보고 싶다면 pm2 log 를 입력해주면 됩니다.


 근데 문제가 발생했습니다. 코드 에디터와 cmd를 종료했다가 다시 켜보니 PM2가 작동은 하지만 로그 기록을 보거나 제가 컨트롤 할 수가 없더라고요. 그래서 다시 pm2 start main.js --watch 를 입력했더니 

node:events:368
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE: address already in use :::3000
// 뒤 오류문은 생략
}

라고 뜹니다. 전에 실행했던 PM2 기능이 작동하여 3000번 포트가 살아 있던거죠. 

그레서 포트를 죽이면(?) 되려나 싶어 검색하여 3000번 포트를 없애보았지만 해결되지 않더라고요. 

 

결론은 pm2 kill 이였습니다. 

[PM2] Applying action deleteProcessId on app [all](ids: [ 0 ])
[PM2] [main](0) ✓
[PM2] [v] All Applications Stopped
[PM2] [v] PM2 Daemon Stopped

 

입력하고 나니 이런 문구가 뜨며 깔끔히 pm2가 종료되더라고요. 

리눅스에 대해 알아보다가 sudo kill을 본게 기억이 나서 pm2 뒤에 kill을 적으면 적용이 되려나 싶었는데 운이 좋게도 되더라고요 ㅋㅋㅋㅋ 

 

저처럼 편리한 기능도 스스로 오류로 만드는 초보자분들에게 도움이 될 수 있으면 좋겠네요.

블로그 방문해주셔서 감사합니다~

리눅스 사용자들 화나게 하기 희희

반응형

'코딩 공부 > node.js' 카테고리의 다른 글

음.... 오류....  (0) 2022.02.15
생활코딩 node.js 수업 중 오류 업데이트  (0) 2022.02.13
글 수정 UI 만들기  (0) 2022.02.13

댓글