해결된 질문
작성
·
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