아마존의 제일 기본적인
EC2
로 선택한다.
위치는 현재 국가인 대한민국으로 설정
인스턴스 시작
웹사이트 이름을 설정하고 aws를 선택한다.
인스턴스 유형 t2.micro 프리티어 사용가능 선택하고 [새 키 페어 생성]을 눌러 생성한다.
키 페어 이름을 정하고 나머진 그대로 생성
키 페어를 반드시 따로 폴더 안에 저장해둔다. (삭제 절대 X)
반드시 프리티어 인지 확인한다.
인스턴스 ID 글씨를 클릭해 들어간다.
퍼블릭 IP주소를 복사한다.
나는 따로 aws라는 폴더를 생성해 키 페어 파일을 저장해 뒀다.
키페어 폴더에서 이제 시작하면 된다.
터미널을 이용해 키 페어에 권한을 줘야한다.
chmod 400 키페어이름.pem (키페어 권한 설정)
Chmod→Change Mode • 나 | 그룹 | 전체
• Read : 4 / write : 2 / excute : 1 의 합으로 권한 표기
• 400→나한테만 읽기 권한 / 754→나는 읽기쓰기실행, 그룹은 읽기쓰기, 전체는 읽기만
ssh -i 키페어이름.pem ec2-user@퍼블릭IP주소
다음 질문에서 Yes
입력
에 자세히 나와 있다.
2번 -> 3번의 코드를 복붙해서 터미널에 입력해준다.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
. ~/.nvm/nvm.sh
Nvm 으로 Node.js 16 버전 설치
nvm install 16
설치 후
node -v
버전 까지 확인하면 OK
sudo yum install git
다운 로드 질문이 나오면 y
누르고 엔터
git --version
mkdir app //app이라는 폴더 생성
ls //파일 리스트 확인
cd app //app폴더로 이동
깃허브로 이동 한 후 git주소 복사하고
터미널로 이동해 클론할 프로젝트의 주소를 복사해 클론 받자
git clone https://github.com/totoback/express_.git
npm i
node app.js
gitignore
파일 안에 .env
를 추가했다면 따로 파일을 업드로 해주어야 한다.
파일질라를 설치해
프로토콜 : SFTP를 선택
호스트 : 내 인스턴스 IP 주소 or 0.0.0.0
사용자 : ec2-user //기본값
키 파일 : 내가 저장한 키파일 업로드
ls
로 키페어만 있는지 확인
ssh -i 키페어이름.pem ec2-user@퍼블릭IP주소
ls
으로 생성한 app
파일 확인
cd app/
이동
ls
로 express_
파일 확인 후
cd express_
로 이동
마지막으로 node app.js
로 접속하면
Node.js 프로그램의 프로세스 관리자 설치하기
npm i pm2 -g
프로세스 실행하기
pm2 start 파일명
프로세스 중단하기
pm2 stop 파일명
pm2 status // 표로 상태 확인 online이 정상
서버 주소창에 인스턴스 IP : 4000으로 가도 접속되지 않는다.
보안 탭을 이동해 인바운드 규칙을 편집해보자.
규칙 추가를 눌러 포트번호 설정후 규칙저장을 누른다.
이제 진짜 접속해보자
인스턴스 IP :4000으로 접속하면
접속 성공!
내 인스턴스로 접속해서
연결을 눌러 웹 터미널 창에서 작업도 가능하다!