본문 바로가기

블록체인 기반 핀테크 및 응용 SW개발자 양성과정 일기

[ 90일차 복습1 ] Amazon AWS 리눅스 백그라운드로 서버 돌리기 / Node.js 에서 pm2 사용하기

반응형

 

지난 주 금요일에 배운 것 : Amazon AWS 리눅스 인스턴스 생성 , Local server와 연결 

이제 연결한 것이 다른 작업을 해도 끊기지 않고 계속 백그라운드에서 연결되어 있도록 작업하기 

 

 

 

Amazon AWS 리눅스 Background로 돌아아게 만들기 두 가지 방법 

1. aws-back 터미널에서 명령어 실행

2. local server pm2 패키지 사용 

 

 

 


리눅스 서버 백그라운드에서 계속 돌아가도록 만들기 

1. aws 리눅스 인스턴스 명령어 방법 

 

터미널 설정해놓기 

* 터미널에 aws-back, front, local-back 생성 

 

 

 

 

 

 

 

 

 

 

 

1) 먼저 해당 경로로 들어가기 (파워셀 - aws-back) 

cd ~ 
pwd
ls       // 폴더확인 
cd [들어갈 폴더명]

2) server 실행은 원래 아래의 명령어, 서버 실행을 끊기지 않도록 하려면 끝에 & 만 붙이면 된다. 

sudo node server.js 
sudo node server.js &                  // 리눅스 서버 백그라운드에서 계속 돌아감 

-> 이렇게 해놓으면 다른 작업도 가능하다. 

 

 

 

백그라운드에서 돌아가고 있는 서버 끄기 

1) 현재 실행 중인 파일 확인 

ps -ef

 

2) server 관련 작업의 PID 값 확인해서 삭제 

node server.js & sudo node server.js 의 PID 확인함 

sudo kill -9 [PID 숫자]

 

 


 

 

 

 

2. EXPRESS Node.js pm2 Package 사용 Background 로 돌리기 

 

1. 파워셀 local-back 이용

2. pm2 설치 

npm i pm2

3. package.json 수정 

{
  "name": "back",
  "version": "1.0.0",
  "description": "",
  "main": "server.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "pm2 start server.js"         //  수정 
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": "^4.17.1",
    "pm2": "^5.1.0"
  }
}

 

4. 서버 실행시키기

npx pm2 start server.js         [server.js = 파일명]

 

서버 멈추기 

npx pm2 stop server    [server는 확장자를 제외한 파일명]

 

 

서버 모니터해보기 (서버 online 실행시켜 놓은 상태에서 명령어 실행) 

npx pm2 monit

 

 

종료 

Ctrl + c 

내용 삭제 

npx pm2 kill 

 

 

 

 

===> 이제 리눅스 server에도 pm2 적용 시키기 

 

1. vs 터미널 경로 aws-back 으로 들어가기

cd ~ 
ls 
cd [파일명]

 

2. pm2 다운받기

sudo npm install -g pm2

 

3. 실행시켜보기 

* 관리가 권한으로 실행해야해서 sudo 붙이기 

sudo npx pm2 start server.js

 

 

 

실행시키는 위의 명령어가 너무 길면 aws-back 의 터미널 명령어로 package.json 내용을 수정해서 짧게 만들 수 있다. 

ls -al        //파일 확인
vi package.json  //  vi -> insert, 편집하겠다.  ---> i 눌러서 편집 ---> esc -> shifg + L + wq! (저장해서 나가기)

실행 명령어

npm run start 

 

위의 정보 , list 다시 보는 명령어

npm pm2 list

server 끄기

sudo npx pm2 stop server

server 삭제 / 없애기 

sudo npx pm2 kill 

 

 

 

반응형