YS's develop story

(RP2기 6주차 과제 ) AWS EC2에서 node.js 배포 하기 본문

기타/라이징프로그래머 2기

(RP2기 6주차 과제 ) AWS EC2에서 node.js 배포 하기

Yusang 2021. 2. 6. 23:28

AWS EC2로 node.js 배포 하기

https://docs.aws.amazon.com/ko_kr/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html

 

자습서: Amazon EC2 인스턴스에서 Node.js 설정 - 용 AWS SDKJavaScript

노드 설치는 현재 EC2 세션에만 적용됩니다. EC2 인스턴스가 사라지면 노드를 다시 설치해야 합니다. 다음 단원에 설명된 대로 유지하려는 구성이 있는 경우 대안은 EC2 인스턴스의 AMI를 만드는 것

docs.aws.amazon.com

 

위의 링크의 절차에 따라 EC2에 node.js를 설치해 줍시다.

그리고 npm install를 통해 필요한 모듈들을 다운로드하여 줍니다.

 

 

이제 AWS EC2의 인스턴스의 인바운드 규칙을 편집해 줍시다.

3000번 포트를 열어 주어야 합니다.

포트를 열어주지 않아 여기서 한참 헤매었습니다 ㅎㅎ...

 

 

RDS의 보안 그룹에서 EC2를 보안 그룹을 추가해 주어여 합니다.

RDS의 인바운드 규칙에 EC2의 보안 그룹 ID를 복사해서 추가해 줍시다.

EC2에서 RDS의 데이터 베이스를 사용하기 때문에 그렇습니다.

(EC2에 해당하는 보안 그룹 ID를 복사하시면 됩니다.!!)

인스턴스의 보안 그룹 ID를 기억하고 있다가 RDS의 인바운드 규칙에 추가!!

 

EC2에 git을 설치해 줍시다.

 

git 설치

sudo apt install git

 

git 기본 정보 설정

git config --global user.name username
git config --global user.email email

설정 후 git config --list 명령어로 확인 가능합니다.

 

git 프로젝트 clone

git clone url

 

 

EC2를 종료하게 되면 node 서버도 같이 종료됩니다. 

그렇기 때문에 서버가 종료되어도 항상 켜 있을 수 있도록 아래의 요소들을 설치해야 합니다.

 

 

PM2를 전역으로 깔아줍니다.

npm install pm2 -g

 

실행

pm2 start index.js를 통해 pm2 인스턴스를 실행시킬 수 있습니다. (파일이 있는 경로로 이동해서 실행)

pm2 start index.js --name "원하는이름" 으로 이름을 지정할 수 있습니다

 

watch기능

pm2 start index.js --watch --ignore-watch="log/*"

 

watch 옵션을 주면 애플리케이션에 변동사항이 있을 시에 자동으로 재시작합니다.

코드를 수정한 후 깃에서 pull을 해 와도 재시작할 필요가 없다는 이야기죠.

 

특정 프로세스 중단

pm2 stop name

 

특정 프로세스 종료

pm2 delete name

 

PM2 종료

pm2 kill 

pm2 자세한 사용법

http://blog.naver.com/PostView.nhn?blogId=pjok1122&logNo=221526163267&parentCategoryNo=&categoryNo=32&viewDate=&isShowPopularPosts=false&from=postView

 

[Nodejs] 외부 패키지 pm2(process manager 2) 사용하기

1. 패키지 매니저(PM) 패키지 매니저란 외부 패키지를 다운로드, 업데이트, 삭제, 의존성 관리 등을 한 ...

blog.naver.com

 

이제 예전에 설정해 두었던 도메인으로 접속할 수 있습니다.!!!

 

 

이제 다음 주부터 2주간 클라이언트 개발자 분과 함께 앱을 하나 선정하고,

실제 앱을 완전 똑같이 만들어 보는 클론 프로젝트 '모의 외주'를 진행하게 됩니다.

 

 

Comments