![](/img/trans.png)
[英]What does this traceback error mean when running this python script in Anaconda?
[英]Traceback error when running elasticsearch and kibana on python
Traceback (most recent call last): File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 157, in _new_conn (self._dns_host, self.port), self.timeout, **extra_kw File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 84, in create_connection raise err File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 74, in create_connection sock.connect(sa) ConnectionRefusedError: [Errno 111] Connection refused
我上面有一条错误消息。 我的python代码(main.py)如下。 我正在使用 docker-compose 来实现 elasticsearch 和 kibana。 我应该如何修复我的代码? 我的问题是来自 main.py 还是 docker-compose.yml?
我的 main.py 在下面。
from datetime import datetime from elasticsearch import Elasticsearch es = Elasticsearch() doc = { 'author': 'taqkarim', 'text': 'Testing ElasticSearch', 'timestamp': datetime(2012, 9, 16, 0, 0), # in the far past } # load a tweet into ES res = es.index(index="test-index", doc_type='tweet', id=1, body=doc) print(res['result']) # query by id res = es.get(index="test-index", doc_type='tweet', id=1) print(res['_source']) es.indices.refresh(index="test-index") # search res = es.search(index="test-index", body={"query": {"match_all":{}}}) print("Got %d Hits:" % res['hits']['total']) for hit in res['hits']['hits']: print("%(timestamp)s %(author)s: %(text)s" % hit["_source"])
您应该将 Elasticsearch 主机和端口显式设置为:
es = Elasticsearch([
{'host': 'my-es-host', 'port': 9200},
])
此外检查您的 Elasticsearch 容器是否打开了 9200 端口,例如
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.6.1
environment:
.... some env vars
ports:
- 9200:9200
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.