AWS서버 백그라운드 실행시키기

YU YU·2021년 7월 19일
2

AWS 배포시키기

목록 보기
2/11
post-thumbnail

1. AWS서버에서 서버 백그라운드로 구동시키기

저번시간까지 내용으로는 로컬에서 서버 구동하는 것과 별로 차이가 없음...
터미널 종료하면 똑같이 꺼지니까

목적: 컴퓨터를 꺼도 aws에서 서버를 구동시켜서 접속이 가능하게끔 하기 위해서

위와같은 목적을 달성하기 위해서는 AWS에서 백그라운드로 서버가 돌아가게끔해야한다.

linux에서 서버 백그라운드로 실행시키기

[ssh]
$sudo node server.js &

이렇게 터미널에 입력하면 백그라운드로 실행한다. &는 백그라운드에서 시작한다는 의미이다. 이걸 종료하려면 작업관리자를 명령어로 쳐야한다.

[ssh]
$ps -ef 

하면 작업관리자가 실행된다.

[ssh]
$sudo kill -9 [PID번호]

node server.js와, sudo node server.js에 해당하는 pid번호를 넣어 명령어를 입력한다.

pm2로 백그라운드 실행시키기

이러한 리눅스 작업을
node.js에서 pm2라는 npm으로도 위 작업이 가능하다.

로컬에서 pm2 실행시키기

명령어모음

[local]
npm i pm2
npx pm2 start [파일명]	//pm2 실행시키기
npx pm2 stop [파일명]  //pm2 실행 멈추기
npx pm2 nomit		  //모니터링하기
npx pm2 kill  		  //pm2 끄기

위와같이 package.js파일에서 script부분에 추가해준다.

[local]
$npx pm2 start server.js

라 입력하면 pm2가 실행되고,

[local]
npx pm2 kill

이렇게 입력하며 pm2가 종료되면서 서버가 꺼진다.
이제 이걸 ssh인증서를 이용해 aws에서 적용시켜보자.

[ssh]
$ sudo npm i -g pm2
$ sudo npx start server.js

백그라운드에서 실행하는 거임.

끝낼때는

[ssh]
$sudo npx pm2 klill

한 다음에 메모를 남겨두기 위해서

[ssh]
$vi package.json

쳐주고

아래와 같이 수정한 다음 :wq!를 쓰고 빠져나온다.

그러면 이제

[ssh]
$ sudo npx pm2 start server.js 
[ssh]
$npm run start

하면 실행되고,

[ssh]
$npx pm2 list

하면 이 창을 다시 띄울 수 있다.



서버 화면도 잘 뜨는 것을 확인할 수 있다.

[ssh]
$sudo npx pm2 kill

하면 서버가 종료된다.
sudo를 붙이지 않으면 저절로 다시 재실행시켜준다.

profile
코딩 재밌어요!

0개의 댓글