[Infra] AWS EC2에 PM2로 Next.js 배포하기

Hoon·2023년 9월 15일
0

Infra

목록 보기
6/10
post-thumbnail

이전에 생성했던 EC2 인스턴스정적 웹 사이트 배포가 아닌 SSR 을 사용할 수 있는 배포를 정리해보려고한다. 컨셉에 맞게 이번에는 React 가 아닌 Next.jspm2 를 사용해 배포해볼려고한다.


pm2

pm2 : 프로세스 관리자(process manager) 로 Node.js로 만들어진 프로그램의 프로세스를 편리하게 관리할 수 있도록 도와주며 아래와 같은 기능을 제공한다.

  • 프로그램이 꺼지면 자동으로 다시켜줄 수 있음
  • 코드가 바뀌었을때 자동으로 프로세스를 껐다 켜줄 수 있음
  • 로그를 확인할 수 있는 화면을 지원함

먼저, 아래의 명령어를 통해 EC2pm2 를 설치해준다.

$ npm install pm2 -g

pm2 는 아래와 같은 명령어를 가진다.

  • pm2 start [name] : 시작
  • pm2 list : 목록
  • pm2 stop id|name|namespace|all|json|stdin : 종료
  • pm2 delete id|name|namespace|all|json|stdin : 제거
  • pm2 start [name] --watch : 코드 변경시 프로세스를 재시작
  • pm2 log : 로그 확인

pm2 Try

이제 Next.js 프로젝트의 경로로 가서 아래의 명령어를 통해 pm2 를 실행 할 수 있다. 여기서 dev 는 실행할 package.json script 명령어이다.

pm2 start yarn -w --name [app-name] -- dev

이전에 EC2Route 53 도메인 연결과 Load Balancer 또는 Nginx3000 Port 설정을 해주었기 때문에 pm2 로 실행한 Next.js 프로젝트가 나오는 것을 확인할 수 있다.


다음에는 Github-Actions, S3, CodeDeploy를 통해 CI/CD 를 정리해보자 !

profile
4년차 개발자 Hoon입니다

0개의 댓글