ecosystem.config.js
파일은 Node.js 애플리케이션을 관리하고 배포하는 데 사용되는 PM2 프로세스 매니저의 설정 파일입니다. PM2는 Node.js 애플리케이션을 관리하는 동안 다음과 같은 기능을 제공합니다.
이제 ecosystem.config.js
파일의 구성을 살펴보겠습니다.
ecosystem.config.js
파일은 다음과 같은 주요 구성을 포함할 수 있습니다.
module.exports = {
apps: [
{
name: 'my-app', // 애플리케이션 이름
script: 'app.js', // 애플리케이션 실행 파일
args: '', // 실행 인수 (옵션)
instances: 1, // 인스턴스 수
autorestart: true, // 비정상 종료 시 자동 재시작
watch: false, // 파일 변경 감지 시 재시작 (true 또는 파일/폴더 목록)
max_memory_restart: '1G', // 메모리 초과 시 재시작
env: {
NODE_ENV: 'development' // 환경 변수 설정
},
env_production: {
NODE_ENV: 'production'
}
}
]
};
위의 구성 예제에서 apps
배열에 하나의 애플리케이션 설정이 정의되어 있습니다. 이 설정은 단일 Node.js 애플리케이션을 관리하는 데 사용됩니다.
name
: 애플리케이션의 이름을 정의합니다.script
: 실행할 Node.js 애플리케이션의 진입 파일을 지정합니다.args
: 애플리케이션 실행 시 전달할 인수를 설정합니다.instances
: 클러스터 모드로 실행할 인스턴스 수를 지정합니다.autorestart
: 애플리케이션 비정상 종료 시 자동으로 재시작할지 여부를 설정합니다.watch
: 파일 또는 폴더 변경을 감지하고 재시작할지 여부를 설정합니다.max_memory_restart
: 애플리케이션 메모리 제한을 초과하면 재시작하는 메모리 제한을 설정합니다.env
및 env_production
: 환경 변수를 설정합니다. 일반적으로 개발 및 프로덕션 환경에 대한 설정을 구분합니다.PM2 CLI를 사용하여 ecosystem.config.js
파일을 통해 애플리케이션을 관리하는 몇 가지 예시를 제공합니다.
애플리케이션 시작:
pm2 start ecosystem.config.js
애플리케이션 중지:
pm2 stop my-app
애플리케이션 재시작:
pm2 restart my-app
애플리케이션 모니터링:
pm2 monit
로그 확인:
pm2 logs my-app
이러한 명령어를 사용하여 ecosystem.config.js
파일에 정의된 애플리케이션을 관리하고 모니터링할 수 있습니다. 이를 통해 Node.js 애플리케이션을 안정적으로 운영하고 관리할 수 있습니다.