인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

안녕하세요님의 프로필 이미지
안녕하세요

작성한 질문수

남박사의 파이썬으로 실전 웹사이트 만들기

프로젝트를 Docker 이미지로 만들어서 배포하기

pymongo.errors.ServerSelectionTimeoutError: mongo:27017: [Errno 113] No route to host

해결된 질문

작성

·

676

1

Docker네트워크를 아래처럼 만들고 mongo 이름을 가진 컨테이너를 넣어주고 

Web 이미지 생성후 접근했을때
pymongo.errors.ServerSelectionTimeoutError: mongo:27017: [Errno 113] No route to host

같은 에러가 나옵니다. 컨테이너 내부에 콘솔로 접근 후에 ping 으로 mongo ip를 붙으면 잘됩니다..

mongodb://mongo:27017을 172.18.0.2 이렇게 ip로 해도 오류가 나옵니다..

답변 2

1

남박사님의 프로필 이미지
남박사
지식공유자

1. 링크를 걸 공용 네트워크를 생성한다. (testweb)

2. mongo 이름을 가진 네트워크를 공용네트워크(testweb)에 연결하여 생성한다.

3. 웹이미지 컨테이너 생성시 역시 공용네트워크(testweb) 에 연결하여 생성한다.

결론적으로 공용네트워크 이름 확인, mongo 컨테이너 이름 확인(대소문자 구분), 모든 컨테이너가 공용네트워크에 속해있는지 확인, 이 3가지만 확실하다면 별 문제가 없을겁니다. 그리고 위 모든 컨테이너는 한개의 도커 안에서 동작합니다.

172.18.0.2 는 공용네트워크의 아이피이고 mongo 컨테이너가 동작하고 있는 아이피로 ping을 날려보셔야 합니다.

ping mongo

혹은 

ping mongo컨테이너 아이피

로 일단 서로 통신이 가능한지부터 확인해보셔야 합니다. 다시 말씀 드리지만 172.18.0.2 는 공용네트워크 아이피지 거기에 몽고가 설치되어있느건 아니시리라 생각됩니다. 파이썬으로 몽고 접속 이전에 설정이 모두 되었으면 mongo 컨테이너쪽으로 ping 이 날라가는지부터 확인하시면 될것 같습니다.

0

답변감사드립니다! 다시한번 시도해보겠습니다

안녕하세요님의 프로필 이미지
안녕하세요

작성한 질문수

질문하기