서버 측에서 Node.js가 인기를 끌면서 점점 더 많은 기업과 개발자가 Node.js를 사용하여 자체 애플리케이션을 구축하기 시작했습니다. Node.js 애플리케이션을 프로덕션 환경에 배포할 때 고가용성, 유연성 및 확장성을 보장하는 것은 매우 중요한 문제입니다. 이 기사에서는 프로덕션 환경에서 안정성을 보장하기 위해 PM2를 사용하여 Node.js 애플리케이션을 패키징하고 배포하는 방법을 다룹니다.
1. PM2란 무엇입니까
PM2는 Node.js 애플리케이션의 개발, 패키징 및 배포를 관리하는 데 사용할 수 있는 오픈 소스 Node.js 프로세스 관리 도구입니다. 프로그램을 모니터링하고 자동으로 다시 시작할 수 있으며 로드 밸런싱 및 0초 다운타임 업그레이드와 같은 기능을 지원하여 프로덕션 환경에서 애플리케이션을 더욱 안정적이고 신뢰할 수 있게 만듭니다. 동시에 PM2는 일반적으로 사용되는 Node.js 도구와 플러그인도 통합하여 개발자가 애플리케이션을 보다 효율적으로 개발할 수 있도록 합니다.
2. PM2 설치 및 구성
PM2를 사용하기 전에 먼저 PM2를 설치해야 합니다. npm을 사용하여 설치할 수 있습니다:
npm install pm2 -g
설치가 완료된 후 pm2 명령을 사용하여 애플리케이션을 시작하고 관리할 수 있습니다. 다음 명령을 사용하여 PM2의 버전과 상태를 볼 수 있습니다.
$ pm2 -v 2.10.4 $ pm2 status
PM2에서는 구성 파일을 사용하여 애플리케이션을 관리해야 합니다. 구성 파일은 애플리케이션의 다양한 속성을 설명하는 JSON 형식의 파일입니다. 가장 간단한 구성 파일은 다음과 같습니다.
{ "name": "my-application", "script": "app.js", "watch": true }
이 구성 파일은 my-application이라는 애플리케이션을 정의하며 해당 시작 스크립트는 app.js이며 파일이 수정되면 자동으로 애플리케이션을 다시 시작합니다.
3. PM2의 기본 사용
개발 및 배포에 PM2를 사용하기 전에 몇 가지 기본 명령을 이해해야 합니다.
다음 명령을 사용하여 애플리케이션을 시작할 수 있습니다.
pm2 start <app.js>
Among app.js는 애플리케이션 시작 스크립트의 경로입니다. 애플리케이션 구성 파일에 시작 스크립트를 정의한 경우 다음 명령을 사용하여 애플리케이션을 시작할 수 있습니다.
pm2 start <config.json>
다음 명령을 사용하여 애플리케이션을 중지할 수 있습니다.
pm2 stop <app_name>
여기서 app_name 우리의 애플리케이션 이름입니다.
다음 명령을 사용하여 애플리케이션을 다시 시작할 수 있습니다.
pm2 restart <app_name>
여기서 app_name은 애플리케이션의 이름입니다.
다음 명령을 사용하여 PM2에서 현재 애플리케이션 목록을 볼 수 있습니다.
pm2 list
다음 명령을 사용하여 PM2의 실행 상태를 볼 수 있습니다. PM2의 애플리케이션:
pm2 status
IV, PM2의 고급 사용
기본적인 사용 외에도 PM2는 Node.js 애플리케이션을 더 잘 관리할 수 있는 몇 가지 고급 기능도 제공합니다.
애플리케이션이 실행하면 PM2가 자동으로 로그 파일을 생성합니다. 다음 명령을 사용하여 로그를 볼 수 있습니다.
pm2 logs <app_name>
여기서 app_name은 애플리케이션의 이름입니다.
또한 pm2 logrotate 명령을 사용하여 로그 파일을 관리하여 과도한 로그가 공간을 차지하는 것을 방지할 수 있습니다.
Node.js를 개발할 때 환경 변수는 이를 설정하는 매우 일반적인 방법입니다. PM2는 또한 환경 변수를 설정하는 방법을 제공하므로 애플리케이션 구성을 보다 유연하게 관리할 수 있습니다.
애플리케이션 구성 파일에서 환경 변수를 설정할 수 있습니다.
{ "name": "my-application", "script": "app.js", "watch": true, "env": { "NODE_ENV": "production" } }
위 구성 파일에서 값이 프로덕션인 NODE_ENV라는 환경 변수를 설정합니다. 애플리케이션에서는 process.env.NODE_ENV를 통해 이 변수의 값을 얻을 수 있습니다.
PM2를 사용하면 여러 인스턴스를 시작하여 로드 밸런싱 및 고가용성을 달성할 수도 있습니다. 다음 명령을 통해 여러 인스턴스를 시작할 수 있습니다.
pm2 start <config.json> -i
여기서 number_of_instances는 시작해야 하는 인스턴스 수입니다.
PM2는 표준 로드 밸런싱과 0초 다운타임 업그레이드도 지원하므로 여러 인스턴스를 더욱 편리하게 관리할 수 있습니다.
5. 결론
이 글에서는 PM2 툴의 기능과 설치 방법을 소개하고, PM2의 기본 사용법과 고급 기능을 소개했습니다. PM2를 사용하면 Node.js 애플리케이션을 더 잘 관리하고 프로덕션 환경에서 더 효율적이고 안정적으로 만들 수 있습니다.
위 내용은 nodejs pm2 패키징 및 배포의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!