logo
Published on

MAC + Docker Container 환경에서 Server to DB 연결 에러

Authors
  • avatar
    Name
    shleecloud
    Twitter

문제

  • MAC + Docker Container 환경에서 Server to DB 통신이 되지 않음
  • Host에서 DB로 접속은 잘 됨 (ex Sequel Pro)
[Nest] ERROR [TypeOrmModule] Unable to connect to the database. Retrying (9)...
Error: connect ECONNREFUSED ::1:3306 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1555:16)

[Nest] ERROR [ExceptionHandler] connect ECONNREFUSED ::1:3306
Error: connect ECONNREFUSED ::1:3306 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1555:16)

해결

Container 내부에서 host.docker.internal 이라는 특수한 도메인으로 접근 가능


원인

  • MAC 환경은 Docker Decktop에서 docker0 브릿지가 생성되지 않음
  • Host -> Container 통신은 포트 포워드로 가능하지만 Container -> Host 통신은 불가능함 따라서 Container -> Container 통신도 불가능하여 특수한 도메인을 제공하는 듯 함

참조 URL