이전에 생성했던 EC2 인스턴스
에 정적 웹 사이트
배포가 아닌 SSR
을 사용할 수 있는 배포를 정리해보려고한다. 컨셉에 맞게 이번에는 React
가 아닌 Next.js
를 pm2
를 사용해 배포해볼려고한다.
pm2
:프로세스 관리자(process manager)
로 Node.js로 만들어진 프로그램의 프로세스를 편리하게 관리할 수 있도록 도와주며 아래와 같은 기능을 제공한다.
- 프로그램이 꺼지면 자동으로 다시켜줄 수 있음
- 코드가 바뀌었을때 자동으로 프로세스를 껐다 켜줄 수 있음
- 로그를 확인할 수 있는 화면을 지원함
먼저, 아래의 명령어를 통해 EC2
에 pm2
를 설치해준다.
$ npm install pm2 -g
pm2
는 아래와 같은 명령어를 가진다.
이제 Next.js
프로젝트의 경로로 가서 아래의 명령어를 통해 pm2
를 실행 할 수 있다. 여기서 dev
는 실행할 package.json script 명령어이다.
pm2 start yarn -w --name [app-name] -- dev
이전에 EC2
에 Route 53
도메인 연결과 Load Balancer
또는 Nginx
로 3000 Port
설정을 해주었기 때문에 pm2
로 실행한 Next.js
프로젝트가 나오는 것을 확인할 수 있다.
다음에는 Github-Actions
, S3
, CodeDeploy
를 통해 CI/CD
를 정리해보자 !