inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

개발자를 위한 쉬운 도커

loaclhost와 네트워크 관련 질문입니다.

해결된 질문

231

kasaxat183

작성한 질문수 4

1

실습 저의 개인 맥북 PC에서 Nestjs 서버를 돌리고 있고 Nestjs에서 첨부한 사진과 같이 docker컨테이너로 mysql을 실행 시켜 늘 localhost로 hosturl을 연결해서 사용 했습니다.

이 경우에는 왜 컨테이너 id를 url로 사용하지 않아도 사용이 된걸까요 ?

컨테이너로 nestjs를 돌리는게 아니라 외부 연결로 간주되어 그런걸까요 ..?

docker 가상화 ci/cd docker-compose github-actions docker-volume container

답변 2

0

황현우

kasaxat183님 안녕하세요. 데브위키입니다.

혹시 mysql 컨테이너를 실행하실 때 포트포워딩을 3307:3307로 설정하셨는지요?

포트포워딩을 설정하셨다면 localhost:3307 로도 접근이 가능합니다!

 

1

kasaxat183

오오 맞습니다 !! 답변 너무 감사합니다 !
덕분에 이해 없이 마냥 주먹구구식으로 사용하던 도커를 잘 활용할 방법에 대한 고민을 하게 되었네요 ㅎㅎ 양질의 강의 너무 감사합니다 !

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

kasaxat183님의 질문에 답변 드리겠습니다. localhost를 URL로 사용하여 Docker 컨테이너에 있는 MySQL에 접속할 수 있는 이유는 Docker가 호스트 시스템과 네트워크를 공유하도록 설정되어 있기 때문입니다. 일반적으로 Docker 컨테이너는 호스트 시스템과 별도의 네트워크 네임스페이스를 가지며, 컨테이너 내부에서 실행되는 애플리케이션은 외부와 통신하기 위해 포트 포워딩이나 네트워크 브릿지 등을 사용합니다.

여기서 localhost는 컨테이너가 아닌, Docker를 실행하고 있는 호스트 시스템을 가리킵니다. 따라서, 컨테이너에 MySQL 서버를 실행하되, 포트를 호스트 시스템에 공개(bind)해 두었기 때문에 호스트 시스템의 localhost 주소와 해당 포트를 통해 MySQL 서버에 접속할 수 있습니다. 이 경우 호스트 PC의 네트워크 설정을 통해 컨테이너에 할당된 포트로 외부에서 접근이 가능하며, 이를 통해 호스트 시스템의 localhost에서 서버에 연결할 수 있는 것입니다.

NestJS 서버가 Docker 컨테이너가 아니라 호스트 시스템에서 직접 실행되고 있으면, localhost:포트번호를 사용해서 Docker 컨테이너 내의 MySQL에 접근하는 것은 호스트 시스템에서 컨테이너로 포트 포워딩 되기 때문에 가능합니다. 따라서 컨테이너 ID를 URL로 사용하지 않고도 접속이 가능한 것입니다. 컨테이너 ID는 컨테이너를 구분하기 위한 Docker 내부의 식별자이며, 네트워크 주소로는 사용되지 않습니다.

33강 도커 빌드 강의의 docker file

0

37

1

개발환경에서 도커 설정

1

101

2

vscode 터미널 설정 관련 질문

0

103

1

쿠버네티스 강의 언제 나오나요..

2

128

2

postgresql-repmgr:15 지원 종료에 따른 대체 이미지 변경 질문드립니다!

1

186

2

섹션 9. 레이어 관리에서 alpine OS 사용 관련 질문 있습니다!

1

72

2

도커 가상 네트워크와 Stateless 특징 관련 질문

1

74

2

우분투 설치

0

71

2

도커 보안을 실무에서 어떻게 대비하시는지 궁금합니다.

1

240

2

컨테이너를 활용한 개발환경 통일에 관하여

1

96

2

k8s 강의 일정

1

114

2

컨테이너의 Stateless 제약 관련 질문

0

98

1

docker push 하는 중 "single-platform image ..." 메세지가 나오고, docker hub에 image와 tag가 정상적으로 등록되지 않습니다.

2

100

1

docker pull [이미지] 다운로드시 에러 해결 방법 문의

1

444

2

강의 재생 오류

1

88

1

Remote JVM Debug Setting

1

105

1

빌드 방식에 대해 질문 있습니다.

1

104

2

컨테이너 레이어 질문 있습니다.

1

106

1

컨테이너 가상화 호스트 OS

1

156

2

강의 이미지 사용

1

168

2

도커컴포즈 오류

0

163

2

USER 명령어와 관련하여 질문드립니다

1

112

1

강의 예정

1

178

2

실행오류

1

214

3