Я использую docker-compose
для запуска приложений python flask и сервисов elasticsearch на сервере Linode.Docker - Elasticsearch - Не удалось установить новое соединение: [Errno 111] Connection reject ',))
Вот мой докер-compose.yml
version: '2'
services:
elasticsearch:
build: config/elastic/
ports:
- "9200:9200"
- "9300:9300"
environment:
ES_JAVA_OPTS: "-Xms1g -Xmx1g"
networks:
- docker_lr
web:
build: .
ports:
- "8000:8000"
networks:
- docker_lr
depends_on:
- elasticsearch
networks:
docker_lr:
driver: bridge
Вот elasticsearch Dockerfile
FROM elasticsearch:5
ENV ES_JAVA_OPTS="-Des.path.conf=/etc/elasticsearch"
CMD ["-E", "network.host=0.0.0.0", "-E", "discovery.zen.minimum_master_nodes=1"]
Вот Dockerfile для веб https://github.com/mysticmode/LibreRead/blob/master/Dockerfile
Обе службы работают , который я могу проверить в браузере с моим: 8000 и: 9200
Но я не мог подключиться к elasticsearch по адресу: 9200 из моего кода приложения python.
r = requests.get('http://localhost:9200/lr_index/book_info/_search', data=payload)
Он показывает эту ошибку
ConnectionError: HTTPConnectionPool(host='localhost', port=9200): Max retries exceeded with url: /lr_index/book_info/_search (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x7f5b13872250>: Failed to establish a new connection: [Errno 111] Connection refused',))
Может кто-то наставит меня? Благодаря!
No:? Я получаю ту же ошибку с хостом, что и elasticsearch. ConnectionError: HTTPConnectionPool (host = 'elasticsearch, port = 9200): Максимальное количество попыток превышено с url:/_ingest/конвейер/вложение (вызвано NewConnectionError (': Не удалось установить новое соединение: [Errno -2] Имя или услуга неизвестна ',)) ' –
rnk
Обратите внимание: [Errno -2] Имя или услуга неизвестна – rnk
Пожалуйста, попробуйте к ping elasticsearch внутри обоих контейнеров. Оба должны преуспеть. –