인프런 커뮤니티 질문&답변

우프베어님의 프로필 이미지

작성한 질문수

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

Typeorm 공부할 프로젝트 세팅하기

yarn start:dev 이후 에러

해결된 질문

23.11.30 03:28 작성

·

755

0

docker-compose.yaml 파일 작성하고

postgres-data폴더도 생성하고

app.module.ts도 똑같이 작성되어 있는 상태입니다

도커가 실행되어있고, docker-compose up을 실행한 뒤에

다른 터미널에서 yarn start:dev를 하면

 

ERROR [TypeOrmModule] Unable to connect to the database. Retrying (1)...

error: "typeormstudy" �����ͺ��̽� ����

at Parser.parseErrorMessage

 

이런 에러 메세지가 출력되면서 정상적으로 실행되지 않습니다

이전 강의에서 사용하던 프로젝트도 모두 종료가 되어있는 상태입니다

제가 어딘가를 놓쳐서 나오는 에러일까요..?

답변 2

2

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

2023. 11. 30. 10:03

안녕하세요!

기존 postgresql 데이터베이스를 설치한적이 있다면 5432 포트에서 잘 작동 안할수도 있습니다.

이럴경우 포트를 5433등 다른 포트와 연동 해주시면 됩니다.

예를들어서 docker-compose.yaml ports 키값에

- '5433:5432'

이런식으로 '원하는포트:5432'로 등록해주고 연결은 변경한 포트로 연결해주시면 됩니다.

감사합니다!

우프베어님의 프로필 이미지
우프베어
질문자

2023. 11. 30. 18:46

선생님께서 남겨주신 답변을 보고 아 포트 문제구나하고
이미 실행중인 5432 포트가 있었는지 찾아서 끝낸후에
다시 실행하니 '5432:5432'도 문제가 없네요 감사합니다 ^^

 

 

1

우프베어님의 프로필 이미지
우프베어
질문자

2023. 11. 30. 18:53

혹시 저와 같은 문제를 겪으실 분들을 위해 남겨놓을게요
전 윈도우10 환경에서 사용중이고

포트 문제가 발생했을때 제가 사용해본 방법들입니다

1.

cmd > netstat -ano 혹은 netstat -ano | findstr 5432 실행후
5432 포트를 사용하는 PID가 있다면
작업관리자(ctrl + alt + del) > 성능탭, 하단 리소스모니터 열기 > 메모리 탭에서 확인한 PID 를 찾아서 프로세스 끝내기

 

2.

cmd에서 netsh interface ipv4 show excludedportrange protocol=tcp 명령어로
내가 사용하고자 하는 포트가 제외범위에 있는지 확인해보고 제외범위에 있다면 제외범위 밖의 포트를
docker-compose.yaml > '제외범위밖포트:5432'
app.module.ts > port : 제외범위밖포트

이렇게 설정해보세요

3.

docker-compose.yaml 파일에서
ports: - ':5432'

이렇게 왼쪽을 비워둔 뒤에 docker-compose up을 실행합니다
그 뒤에 실행이 되면 docker desktop에 가서 실행중인 컨테이너의 actions에서 view detail로 들어가면
예를들어 Running 11151:5432 와 같은것을 보실 수가 있는데요
이때 왼쪽에 있는 11151는 사용가능한 포트로
ports: - '11151:5432' 로 수정하고
app.module.ts의 port도 11151로 작성하면
정상적으로 동작합니다

 

물론 제가 전문가가 아니기 때문에 추후에 어떤 문제가 발생할지는 모르나..
궁금해서 이것저것 찾아본 뒤에 동작하는 것을 확인했으니
이 글이 누군가에게 도움이 되었으면 하는 바램으로 남겨놓겠습니다