pm2-offline-install
폐쇄망에서 PM2 오프라인 설치 가이드
개요
이 가이드는 인터넷 접속이 제한된 폐쇄망 환경에서 PM2와 PM2 Log Rotate 모듈을 설치하는 방법을 설명합니다.
PM2 설치
1
동일한 환경 구성
폐쇄망 머신과 동일한 OS/Architecture를 가진 온라인 머신을 준비합니다.
참고
컨테이너, VM, 네이티브 등 상황에 따라 적절한 환경을 구성하세요.
2
온라인 머신에서 npm 캐시 구성
온라인 머신에서 PM2를 설치하면서 npm 캐시를 생성합니다.
bashPM2 설치 (캐시 생성용)
npm install -g pm2캐시 경로
npm 캐시는 ~/.npm/_cacache 경로에 저장됩니다.
3
캐시 파일 이전
구성된 npm과 npm 캐시 경로를 압축하여 폐쇄망 머신으로 옮깁니다.
bash캐시 압축
tar -czf npm-cache.tar.gz ~/.npm/4
오프라인 설치
폐쇄망 머신에서 오프라인 모드로 PM2를 설치합니다.
bashPM2 오프라인 설치
npm install -g pm2 --offline --no-registry --cache=/캐시/경로의존성 문제 해결
추가 의존성이 요구되는 경우, 캐시가 불완전한 상태입니다. npm list -g --depth=0 명령어로 누락된 의존성을 확인하여 캐시를 보완하세요.
Log Rotate 설정 옵션
설정 참고
아래는 PM2 Log Rotate의 주요 설정 옵션들입니다.
기본 옵션
| 옵션 | 기본값 | 설명 |
|---|---|---|
max_size | 10M | 파일 크기가 이 값을 초과하면 로테이션 실행 (10G, 10M, 10K 등 단위 지정 가능) |
retain | 30 | 보관할 로그 파일 개수 |
compress | false | gzip 압축 사용 여부 |
dateFormat | YYYY-MM-DD_HH-mm-ss | 로그 파일명에 사용할 날짜 형식 |
rotateModule | true | PM2 모듈 로그도 로테이션할지 여부 |
고급 옵션
| 옵션 | 기본값 | 설명 |
|---|---|---|
workerInterval | 30초 | 로그 크기 체크 간격 (최소 1초) |
rotateInterval | 0 0 * * * | 강제 로테이션 cron 스케줄 (기본: 매일 자정) |
TZ | 시스템 시간 | 타임존 설정 (예: Etc/GMT+1) |