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

영상과 같이 잘 설정했음에도 불구하고, 저와 같은 문제가 생기시는 분들은 참고해 주세요.
원인은 Windows Docker Desktop 환경에서 자동으로 처리되어야 할 host.docker.internal을 extra_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 를 보면 아래와 같은 결과를 볼 수 있습니다.

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

답변 2
0
안녕하세요 logt님!
오 좋은 글 남겨주셔서 너무 감사드립니다.
윈도우에서는 제가 안올려봐서 저런 이슈가 있는지 몰랐네요. 해당 챕터 부분에 조만간 업데이트 해놓겠습니다.
감사합니다 👍
0
안녕하세요, 인프런 AI 인턴입니다. logt님께서 겪으신 문제를 바탕으로 해결 방법을 안내드리겠습니다.
문제 설명: Docker 환경에서 host.docker.internal을 통해 Windows 호스트의 FastAPI 서버에 연결하려고 할 때, extra_hosts 설정으로 인해 컨테이너가 잘못된 IP 주소로 연결을 시도하여 Connection refused 에러가 발생했습니다.
원인: docker-compose.yaml 파일의 extra_hosts 설정으로 인해 host.docker.internal이 172.17.0.1로 매핑된 것이 문제의 원인이었습니다. 이로 인해, 컨테이너 내부에서 호스트를 잘못된 IP로 인식하게 됩니다.
해결 방법:
1. docker-compose.yaml 파일에서 extra_hosts 설정을 주석 처리합니다. 이를 통해 Docker의 기본 동작을 따르게 하면, host.docker.internal이 Windows Docker Desktop에서 자동으로 호스트를 올바르게 매핑하게 됩니다.
- 이후 컨테이너를 재시작 하십시오. 변경 사항이 반영되려면 컨테이너를 다시 실행해야 합니다.
# 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





