Skip to content

PM2 치트 시트

pm2는 Node 프로세스를 관리하고 프로세스 상태를 확인하는 데 사용되는 프로세스 관리 도구입니다. 또한 성능 모니터링, 프로세스 보호, 부하 분산(Load Balancing) 및 기타 기능을 지원합니다.

Fork 모드

명령 설명
pm2 start app.js --name my-api 프로세스를 시작하고 이름을 지정

Cluster 모드

명령 설명
pm2 start app.js -i 0 가용한 CPU 수에 따라 LB(스케줄러)를 위한 최대 프로세스 수로 시작

목록 보기

명령 설명
pm2 list 모든 프로세스 상태 표시
pm2 jlist 프로세스 목록을 원시 JSON 형식으로 출력
pm2 prettylist 프로세스 목록을 예쁘게 정렬된 JSON 형식으로 출력
pm2 describe 0 특정 프로세스와 관련된 모든 정보 표시
pm2 monit 모든 프로세스 모니터링

로그

명령 설명
pm2 logs [--raw] 모든 프로세스 로그를 스트림 모드로 표시
pm2 flush 모든 로그 파일 비우기
pm2 reloadLogs 모든 로그 다시 로드

작업

명령 설명
pm2 stop all 모든 프로세스 중지
pm2 restart all 모든 프로세스 재시작
pm2 reload all 0초 다운타임 재로드(NETWORKED 애플리케이션용)
pm2 stop 0 특정 ID의 프로세스 중지
pm2 restart 0 특정 ID의 프로세스 재시작
pm2 delete 0 pm2 목록에서 프로세스 삭제
pm2 delete all pm2 목록에서 모든 프로세스 삭제

기타

명령 설명
pm2 reset <process> 메타데이터(재시작 시간 등) 초기화
pm2 updatePM2 메모리상의 pm2 업데이트
pm2 ping pm2 데몬이 시작되었는지 확인
pm2 sendSignal SIGUSR2 my-app 스크립트에 시스템 신호 전송
pm2 start app.js --no-daemon pm2 데몬이 없는 경우 포그라운드에서 실행
pm2 start app.js --no-vizion vizion 기능(버전 관리) 건너뛰기
pm2 start app.js --no-autorestart 애플리케이션의 자동 재시작 비활성화