-
[Node.js] NPM, PM2생활코딩/WEBn 2020. 9. 14. 16:38
[강의 출처] opentutorials.org/course/3332/21133
NPM (Package Manager)
- python의 pip에 해당
- 전역에서 사용할 패키지라면 'npm install 패키지명 -g'으로 다운로드가 가능하다. -g는 --global 옵션.
- 특정 프로젝트에서만 사용할 패키지라면, 해당 경로에서 'npm init' 명령을 통해 프로젝트 초기 설정 후, 다운로드 및 관리할 수 있다.
- init시에 패키지명을 비롯해 여러 가지를 묻는데, 배포할 게 아니라면 별도 설정 없이 디폴트값을 따라도 된다.
- init 설정을 마치면 'npm install 패키지명' 으로 패키지 설치가 가능하다.
- 설치되는 패키지의 dependencies는 자동으로 설치되므로 따로 신경쓰지 않아도 된다.
- 설치 시 기본 옵션은 -S(--save)로, 설치되는 패키지는 해당 프로젝트 package.json의 dependencies에 기록된다.
- 개발 시에만 사용하는 패키지를 구분해두고 싶다면 -D(--save-dev) 옵션을 쓰자. devDependencies에 기록된다.
PM2
- production process manager for Node.js applications
- 프로세스 실행, 운영, 꺼짐 방지, 모니터링, 소스코드 변경시 재시작 등 다양한 기능을 제공
$ pm2 start app.js // 프로세스 실행 $ pm2 start app.js --watch // 소스코드 변경시 자동 재실행 옵션 $ pm2 list // 현재 실행중인 프로세스 목록 제공 $ pm2 monit // 현재 실행중인 프로세스 모니터링 $ pm2 stop app // 프로세스 종료 $ pm2 log // 로그 출력 $ pm2 kill // pm2로 실행한 모든 프로세스를 중지 & 삭제 $ pm2 start main.js --watch --ignore-watch="data/* sessions/*" --no-daemon /* --no-daemon: 실행하면서 로그 출력 * --ignore-watch="data/* sessions/*": 특정 디렉토리에 watch 옵션 제외 */
'생활코딩 > WEBn' 카테고리의 다른 글
[Node.js] 비동기/동기(Sync)와 콜백, request (0) 2020.09.15 [HTML] form (0) 2020.09.14 [Node.js] 기타 - read/write JSON, function import, css/js response, favicon (0) 2020.09.11 [Node.js] 개요 - CRUD(Create, Read, Update, Delete) (0) 2020.09.10 [Node.js] 개요 - 웹페이지 생성 preview, query string (0) 2020.09.09