Node.js

Node.js - 패키지 매니저와 PM2

수업소개

혼자서 소프트웨어를 만드는 일은 거의 없습니다. 타인의 모듈을 이용해서 소프트웨어를 만들게 됩니다. 이 때 사용하는 모듈이 많아지면 여러가지 복잡한 문제가 생겨납니다. 이를 관리하는 도구가 패키지 매니저입니다. 이 수업에서는 대표적인 패키지 매니저인 NPM을 사용하는 법을 살펴봅니다. 

또 실행중인 Node.js 애플리케이션을 관리하는 프로세스 매니저 PM2의 사용법도 알아보겠습니다. 

 

 

 

강의

댓글

댓글 본문
작성자
비밀번호
  1. 호두
    고맙습니다
  2. Ashed GoodDevil
    비번을 입력하는 경우는 리눅스나 맥 환경에서 관리자 권한의 명령(sudo)때문에 입력하는 거구요.
    윈도우 환경에서는 별도로 입력을 요청하지 않습니다.

    pm2 start main.js 입력후 [PM2] Done. 메세지와 현재 서버에 올라간 어플리케이션 리스트가 보여질겁니다.
    (pm2 list 입력시 나오는 리스트와 동일)

    만일 이 리스트상에 아무것도 나타나지않으면 제대로 작동하지 않은겁니다.
    대화보기
    • womanizer39
      1님과 같은 오류를 겪고 해결 후 댓글 남깁니다!

      결론적으로, 왜그런지는 모르겠지만 pm2 상위 버전에서 생기는 문제인것 같아요.
      그러니 해결방법은 pm2 버전을 하위 버전으로 다시 install 하면 됩니다.

      1. pm2 - v 을 통해 현재 버전을 확인해주세요. (저는 3.2.8 이었습니다.)

      2. npm install pm2@3.2.4 -g 를 통해 3.2.4 버전으로 새로 install 합니다.
      현재 어느 버전까지 가능한지는 잘 모르겠으나, 구글링과 깃 이슈들을 찾아본 결과 3.2.4에서는
      잘 된다는 답변들이 많더라구요.

      3. install이 끝나면 다시한번 pm2 -v 을 통해 버전 확인을 합니다.
      버전이 3.2.4 인걸 확인하면, 이제 start 해보세요!
    • tajava2006
      저도 1 님이랑 똑같은 오류가 생깁니다. 처음에 pm2 설치하라고 할 때 비밀번호를 치라는 것도 없고 pm2 start main.js 하면 done 하면서 실행된 것 처럼 구는데 web app이 접속은 안되고요.

      node main.js 하면 잘만되는데 말이지요. 아무리 해봐도 오류가 안 없어지는데 어떡하죠 ㅠㅠ
    • node.js
      예전 node.js 강좌에서는 supervisor를 썼는데, 왜 pm2로 바꿨어요?
    • 코베
      굿굿 베리굿 !
    • 에델
      웅 카렌 에델 완료
    • jo_onc
      오..! 아주 좋습니다!
      감사합니다~
    • 가자
      Thank you egoing
    • [pm2]done.
      이거 일때 컨트롤 C 눌러서 빠져나가서 pm2 monit로 가라는 소리가 아닌가봐여?
      Y나 N으로 는 아무런 변화가 없네요 pm2 monit 화면에서
    • pm2 start main.js 하셔서 돌리시고 pm2 monit으로 모니터링 들어가신다음 웹으로 localhost 접속해보세요 그러면 모니터링 화면에 로그 찍힐거에여 아마 에러나서 안되는거같은데 에러 로그 찍히니까 그거 보시면 좀 해결 할 수 있으실꺼에요
      대화보기
      • 조언 감사합니다..그런데 시도해봐도 안 돼네요.
        data폴더가 바탕화면에 있는 nodejs파일에 있는 readdir인것 아닌가요?
        혹시나 해서 main.js 안에 ./data가 있는 것도 ../data로 바꿔봤는데 안되서 한 번 봐주십사 남겨봅니다.
        https://uploads.disquscdn.com......jpg
        대화보기
        • 저도 같은 상황을 겪었는데 보니까 data디렉토리가 상위 디렉토리로 옮겨져있어서 readdir의 './data'를 '../data'로 바꿨더니 됐어요 혹시 같은 상황일수도있으니 시도 해보세요
          대화보기
          • 윈도우즈 cmd로 node main.js는 localhost:3000 되는데
            npm install pm2 -g 설치할때 비번 치는것도 없고
            pm2 start main.js 하면
            [pm2] Starting C:Users\1\Desktop\nodejs\main.js in fork_mode (1 instance)
            [pm2] done
            이렇게 뜨는데 localhost:3000치면 사이트에 연결할 수 없음 뜹니다.
            컨트롤 C 누르고 Y/N 아무거나 해도
            pm2 list pm2 monit 다 표 모양은 뜨는데 내용이 없습니다.
          • 감사합니다.
          • Seo Yun Seok Tudoistube
            와! nodemon 도 얼마전에 알았는데, pm2 는 기능도 많네요.
            package.json 안에 script 부분에 사용할 수 있는지 수업 따라가면서 해봐야 겠습니다.
            감사합니다^^!
          graphittie 자세히 보기