Node.js

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

수업소개

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

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

 

 

 

강의

댓글

댓글 본문
작성자
비밀번호
  1. freasher
    completedzddz
  2. 강다리
    !
  3. 쑤우
    수강완료. 감사합니다~~
  4. 박준영
    lite-server로도 가능합니다 ㅎㅎ
  5. 굼벵이
    완료
  6. 김준우
    --watch 를 사용하고 싶은데
    사용시에
    EADDRINUSE라는 오류가 뜹니다 검색을 해보니 port가 겹쳐서 나타나는 오류라고하는데 어떻게 해결해야 할까요 .js 파일을 변경후 reload하면 error가 발생합니다
  7. CronEB
    정말 편하네요 .. 저도 아래 1 님과 같이 처음에 실행이 되었다고 나오는데 web으로 접속해보면 안된다고 하더라구요 monit 을 켜니까 뭐가 문제인지가 나오니 로그를 잘보고 수정하면 될것 같네요

    저같은경우는 경로 문제였습니다. pm2 가 main 을 start 한곳에서 filelist 를 제대로 갖고오지 못했더라구요 절대경로를 써줘서 해결했습니다.
  8. YesterdayKite
    완료. 감사합니다!
  9. 이이이이이뻐
    windows 10.
    visual studio code의 terminal 창에서
    pm2 start and monit 도중에
    작업관리자 켜서
    node.js: server side javascript process 강제 종료시에
    monit 환경에선 실행중이나
    재실행 되진 않네요;
  10. pm2 : conmmand not found 이렇게 떠서
    구글링했는데 환경변수가 설정이 안되어있을 수 있다는 의견이 있어서 다시 설정해 보았으나 계속 not found 라고 뜹니다
    혹시 어떻게 해결하면 좋을까요??
  11. ㅇ0ㅇ
    완료
  12. study completed
  13. youngjin.lee
    Completed
  14. 허공
    190510 감사합니다.
  15. 이루
    완료
  16. 위준우
    완료
  17. 위준우
    Ctrl + C로 빠져나오시면 됩니다.
  18. 위준우
    완료
  19. Doodlez
    pm2 log

    하고나서 그 창은 어떻게 빠져나오나요??
  20. SeanPark
    계속해서 신세계를 경험중입니다. 끝내주네요.
  21. 자유로움
    완료
  22. supernet
    완료
  23. 지미츄
    감사합니다
  24. 호두
    고맙습니다
  25. 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 화면에서
    • woulk
      pm2 start main.js 하셔서 돌리시고 pm2 monit으로 모니터링 들어가신다음 웹으로 localhost 접속해보세요 그러면 모니터링 화면에 로그 찍힐거에여 아마 에러나서 안되는거같은데 에러 로그 찍히니까 그거 보시면 좀 해결 할 수 있으실꺼에요
      대화보기
      • 조언 감사합니다..그런데 시도해봐도 안 돼네요.
        data폴더가 바탕화면에 있는 nodejs파일에 있는 readdir인것 아닌가요?
        혹시나 해서 main.js 안에 ./data가 있는 것도 ../data로 바꿔봤는데 안되서 한 번 봐주십사 남겨봅니다.
        https://uploads.disquscdn.com......jpg
        대화보기
        • woulk
          저도 같은 상황을 겪었는데 보니까 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 다 표 모양은 뜨는데 내용이 없습니다.
          • moon
            감사합니다.
          • Seo Yun Seok Tudoistube
            와! nodemon 도 얼마전에 알았는데, pm2 는 기능도 많네요.
            package.json 안에 script 부분에 사용할 수 있는지 수업 따라가면서 해봐야 겠습니다.
            감사합니다^^!
          graphittie 자세히 보기