inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

AI 입문을 위한 LLM 아키텍처 이해와 GPU 활용전략

FastAPI Backend

[참고] Cannot connect to host host.docker.internal:8080

해결된 질문

64

logt

작성한 질문수 25

0

image.png

영상과 같이 잘 설정했음에도 불구하고, 저와 같은 문제가 생기시는 분들은 참고해 주세요.

 

원인은 Windows Docker Desktop 환경에서 자동으로 처리되어야 할 host.docker.internalextra_hosts: host.docker.internal:host-gateway로 강제로 덮어쓴 것입니다. 그 결과 OpenWebUI 컨테이너가 Windows 호스트의 FastAPI 8080 서버가 아니라 172.17.0.1:8080으로 접속했고, 해당 위치에는 요청을 받을 서버가 없어 Connection refused가 발생했습니다.

 

에러 로그:

Cannot connect to host host.docker.internal:8080
Connect call failed ('172.17.0.1', 8080)

OpenWebUI는 host.docker.internal:8080에 접속하려 했는데, 컨테이너 내부에서 그 IP를 172.17.0.1로 해석됐고, 결국 172.17.0.1:8080으로 접속하다가 실패했습니다.

 

문제의 원인은 `docker-compose.yaml 에 있었습니다.

extra_hosts:
  - "host.docker.internal:host-gateway"

extra_hosts는 컨테이너 내부의 /etc/hosts에 hostname/IP 매핑을 추가하는 Compose 설정입니다. Docker Compose 문서에서도 extra_hosts는 컨테이너의 hosts 파일에 hostname 매핑을 추가하는 기능이라고 설명합니다. [참고]

 

실제로 도커 데몬 내부에 /etc/hosts 를 보면 아래와 같은 결과를 볼 수 있습니다.

image.png

 

해결 방안은 아래와 같이 extra_hosts 설정을 주석 처리하시면 됩니다.

image.png

 

gpu attention-model 인공지능(ai) transformer llm

답변 2

0

김현진

안녕하세요 logt님!

 

오 좋은 글 남겨주셔서 너무 감사드립니다.

윈도우에서는 제가 안올려봐서 저런 이슈가 있는지 몰랐네요. 해당 챕터 부분에 조만간 업데이트 해놓겠습니다.

감사합니다 👍

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. logt님께서 겪으신 문제를 바탕으로 해결 방법을 안내드리겠습니다.

문제 설명: Docker 환경에서 host.docker.internal을 통해 Windows 호스트의 FastAPI 서버에 연결하려고 할 때, extra_hosts 설정으로 인해 컨테이너가 잘못된 IP 주소로 연결을 시도하여 Connection refused 에러가 발생했습니다.

원인: docker-compose.yaml 파일의 extra_hosts 설정으로 인해 host.docker.internal172.17.0.1로 매핑된 것이 문제의 원인이었습니다. 이로 인해, 컨테이너 내부에서 호스트를 잘못된 IP로 인식하게 됩니다.

해결 방법:
1. docker-compose.yaml 파일에서 extra_hosts 설정을 주석 처리합니다. 이를 통해 Docker의 기본 동작을 따르게 하면, host.docker.internal이 Windows Docker Desktop에서 자동으로 호스트를 올바르게 매핑하게 됩니다.

  1. 이후 컨테이너를 재시작 하십시오. 변경 사항이 반영되려면 컨테이너를 다시 실행해야 합니다.
# docker-compose.yaml 예시
version: '3'
services:
  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open-webui
    restart: always
    ports:
      - "8080:8080"
    # extra_hosts:
    #   - "host.docker.internal:host-gateway"

(이미지: Docs for Networking)

위와 같은 설정으로 extra_hosts의 주석 처리 후, 호스트와의 네트워크 통신이 올바르게 수행되길 바랍니다. 이 정보가 도움이 되었기를 바라며, 추가적인 문제가 발생하거나 궁금한 점이 있으시면 언제든지 질문해 주세요. 곧 지식공유자께서도 도움을 드릴 것입니다.

저는 질문자님의 이해를 돕고자 기존 답변을 참고하여 유사한 해결 방법을 안내 드리고 있습니다. 현재 베타 기능으로 답변이 완전하지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 질문이 있으시면 이어서 남겨주시면 감사하겠습니다.

제7강 : sonnet으로 변경후 model 확인거 따라하는데 안됨

0

2

1

앱에서 코워크 탭이 없어진거 같은데요.

0

16

1

미션6 진행 관련 .html파일 미저장

0

11

2

vps 캔바 mcp OAuth 인증이 나타나지 않습니다.

0

10

1

Sonauto/v2/text 찾아도 없습니다.

0

14

2

.claude 가 없습니다. 왜그런가요

0

20

2

클로드 접속이 안되고 있습니다.

0

15

0

playwright 설치시 같이 설명해주세요 아니면 저같이 실수가 나오네요

0

14

0

git 복수로 커밋하기

0

21

2

Context7 설치 방법 바뀐 듯 한데...

0

16

1

만들어둔 hermes 다른 pc로 옮기는 방법이 있을까요?

0

15

0

unit 5.7 은 미니PC 사용자는 어떻게 해 볼수 없나요

0

16

1

\init를 할때마다 Claude.md파일이 자동으로 업데이트 되는지 궁금합니다.

0

14

1

브라우저상의 헤르메스 대시보드 실행 방법

0

17

1

python을 upgrade 와 claude doctor 에러가 나타납니다

0

19

2

강의중 '스타터킷'을 링크로 보내줬다고 하는데, 어디서 받는건가요?

0

17

1

디스코드 초대를수락할 수 없음이라고 떠요

0

21

1

로컬호스트에 웹훅으로 불어오기 오류

0

20

2

강의 PPT 자료는 제공되지 않나요?

0

19

2

영상에 나오는 pen 기능 앱이름좀 알수 있을까요?ㅎㅎ

0

24

1

40강 Multi GPU 필요성 설명이 두번 나오는 것 같아요

0

55

2

There are no longer any instances available with the requested specifications. Please refresh and try again.

0

88

2

질문있는데요.. vLLM은 말씀하신 사양에 적용이되나요?

0

77

2

강의 영상 오류

0

96

1