Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- PYTHON
- gs25
- 금융문자분석경진대회
- dacon
- Kaggle
- programmers
- 코로나19
- 편스토랑 우승상품
- 자연어처리
- 맥북
- 편스토랑
- Baekjoon
- AI 경진대회
- ubuntu
- ChatGPT
- 프로그래머스
- github
- Real or Not? NLP with Disaster Tweets
- 더현대서울 맛집
- 파이썬
- 프로그래머스 파이썬
- leetcode
- 캐치카페
- Git
- hackerrank
- SW Expert Academy
- 백준
- Docker
- 데이콘
- 우분투
Archives
- Today
- Total
솜씨좋은장씨
[Docker] flask API Docker Container에서 localhost의 Elasticsearch 연결 시 발생하는 ConnectionError 해결방법 본문
Programming/Docker
[Docker] flask API Docker Container에서 localhost의 Elasticsearch 연결 시 발생하는 ConnectionError 해결방법
솜씨좋은장씨 2020. 5. 12. 13:52728x90
반응형
Elasticsearch가 설치된 서버와 api를 실행할 서버가 같으면서
개발한 API 에서 Elasticsearch를 연결할 때
es_client = Elasticsearch("http://localhost:9200")
위와 같이 Python과 Elasticsearh 라이브러리를 활용하여 연결하는 경우
Python과 Flask를 활용하여 개발한 API를 담은 이미지를 만들고
docker run -it -d --name api_contatiner -p 5000:5000 api_image
위의 명령어를 활용하여 container로 실행한 후
http://localhost:5000/search?query=%EC%95%88%EB%85%95
query를 보내 호출을 하려고하면
app.py가 실행되면서 Elasticsearch에 연결하려고 할때
:
elasticsearch.exceptions.ConnectionError: ConnectionError(<urllib3.connection.HTTPConnection object at 0x7f1f7d8e9970>:
Failed to establish a new connection: [Errno 111] Connection refused) caused by:
NewConnectionError(<urllib3.connection.HTTPConnection object at 0x7f1f7d8e9970>:
Failed to establish a new connection: [Errno 111] Connection refused)
위와 같은 오류가 날 경우가 있습니다.
이 경우에는 docker 이미지를 run 하는 명령어에서 한 가지 설정을 더 입력해주면 됩니다.
docker run -it -d --name api_contatiner -p 5000:5000 --network=host api_image
--network=host 설정을 같이 입력해주고
아까와 같이 다시
http://localhost:5000/search?query=%EC%95%88%EB%85%95
같은 요청을 보냈을때
이번에는 제대로 Elasticsearh와 연결되어 제대로 된 결과값이 나오는 것을 확인할 수 있습니다.
읽어주셔서 감사합니다!
'Programming > Docker' 카테고리의 다른 글
Comments