환경

[nestjs + ec2 + docker] 트러블 슈팅 일기

왈왈디 2023. 5. 24. 00:59
728x90

0524(수)

 

3차 프로젝트가 프론트 1명 백엔드 1명(나)으로 진행되고 있다.

API를 만들고 프론트에서 테스트해보기 위해서는 서버를 실행시켜주어야 하는데,

서버를 켜 둔 상태로 가만히 기다리고 있자니 개발을 못하고,

서버를 켜두고 계속 코드를 쓰자니 프론트에서 API를 사용하는 도중에 계속 에러가 난다.

 

그래서 git으로 develop 브랜치를 파서 새로운 API는 새로운 branch에 작성하여 완성되면 develop 브랜치에 머지시키고,

EC2 서버에 docker를 띄워 서버를 가동시켜 놓으려고 한다.

 

계획은 완벽했으나... 실행이 되지 않는 것이 문제다.

 

한 가지 더 장벽은 취준 기간에 1차 프로젝트의 서버 배포를 내가 맡기로 하여, 

1차 프로젝트도 함께 가동시켜야한다는 점이다.

 

현재 발생 중인 문제는

1. 터미널에서 EC2가 실행이 안된다.

ssh -i [.pem 파일] [이름]@[주소] 로 명령어를 입력해 접속하는 것이

어제까지만 해도 잘 됐는데 갑자기 안된다.

AWS 웹사이트에 접속해 EC2를 중지시켰다가 다시 시작하기도 하고, 재부팅하기도 해봤지만

반응없이 한참이 시간이 지나고 아래와 같은 에러 메시지만 뜬 게 벌써 몇번 째인지 셀 수 없다. 

ssh: connect to host [내 주소] port 22: Operation timed out

AWS 웹사이트에서 직접 연결로는 접속이 가능하길래

그걸로라도 접속해 docker를 실행시켜 보았다.

 

2. Docker run 에러 발생

서버 배포는 javascript와 node.js 환경에서만 해보고, typescript와 nestjs 환경에서는 처음이다.

그래서 그런지 어디가 어떻게 잘못된 건지 파악하는 데 오래 걸리는 것 같다.

 

현재 상황은 docker build와 push/pull은 잘 되는데,

docker run을 실행하면 아래와 같은 에러 메시지가 나타난다는 거다.

<--- Last few GCs --->
ll[24:0x7f4435b873d0]    26508 ms: Mark-sweep (reduce) 482.2 (484.6) -> 481.5 (485.8) MB, 583.6 / 0.0 ms  (+ 0.0 ms in 14 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 652 ms) (average mu = 0.145, current mu = 0.105) all[24:0x7f4435b873d0]    27232 ms: Mark-sweep (reduce) 482.6 (485.1) -> 481.8 (486.3) MB, 712.1 / 0.0 ms  (+ 0.1 ms in 16 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 724 ms) (average mu = 0.077, current mu = 0.016) all

<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! backend@0.0.1 start:dev: `cross-env NODE_ENV=dev nest start --watch`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the backend@0.0.1 start:dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2023-05-23T15_41_21_793Z-debug.log

해결은 to be continued... 개발도 해야 하는데...

728x90