티스토리 뷰

기록

NestJS, Prisma 설정할 때 몇 가지 정리

Korean Eagle 2022. 9. 24. 11:30
728x90

1. devcontainer의 local, remote, forwordPort의 개념이 직관적이지 않아 혼란을 준다.

  1-1 local은 container를 가지고 있는 host를 의미한다. remote는 도커 컨테이너를 의미한다.

  1-2 DB 같은 독립 서비스형 컨테이너는 docker-compose.yml에서 포트 설정하는 것이 바람직하다.

  1-3 devcontainer.json에서 사용하는 forwardPorts는 단순히 remote에서 사용하려는 내부 포트를 나열하는 용도

    1-3-1 remote란 컨테이너를 말한다.

  1-4 컨테이너에서 local 포트 매핑을 조정할 수 있는데 localhost:port 형식의 부분이 local의 포트이다.

  1-5 network_mode에서 db와 동일한 네트워크를 사용할 경우 포트는 remote 포트로 접근해야 한다.

    1-5-1 remote 포트는 도커 내에서 사용하는 db의 포트를 말한다.

 

2. docker-compose.yml의 depends_on에 mysql의 서비스이름이 들어가야 한다.

  2-1 network_mode 역시 동일하게 service:mysqldb (예시 mysqldb가 service이름이다.)

 

3. volumns은 서비스 사이의 공유 볼륨이기 때문에 mysql서비스의 volumns의 로컬 볼륨과 일치해야 한다.

 

4. prisma의 migration에서 리눅스의 경우 prisma는 mysql의 root 권한을 요구한다.

728x90
댓글