【问题标题】:Connection Refused connecting from docker to Elasticsearch docker containerConnection 拒绝从 docker 连接到 Elasticsearch docker 容器
【发布时间】:2020-06-23 09:31:33
【问题描述】:

我正在尝试从容器内的 Java 应用程序访问容器内的 Elasticsearch 数据库。

它们都在以下 docker-compose.yml 中:

version: "3.7"
services:
  es:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.6.1
    ports:
      - "9200:9200"
      - "9300:9300"
    networks:
      - elastic

  java-app:
    image: neileen/dockerhub_app:java-latest
    ports:
      - "8080:8080"
    depends_on:
      - es
    networks:
      - elastic

networks:
  elastic:
    driver: bridge

如您所见,我使用桥接网络使容器彼此可见和可访问。

在我的 Java 应用程序中,我使用 RestHighLevelClient:

RestHighLevelClient client = new RestHighLevelClient(
                    RestClient.builder(
                            new HttpHost("es", 9200, "http")));

我也尝试使用“localhost”和“0.0.0.0”作为主机名而不是“es”,但没有结果。

我不断得到的例外是:

java-app_1     | The cluster is unhealthy: Connection refused
java-app_1     | java.net.ConnectException: Connection refused
java-app_1     |        at org.elasticsearch.client.RestClient.extractAndWrapCause(RestClient.java:804)
java-app_1     |        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:225)
java-app_1     |        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:212)

我知道这是一个与端口 9200 在 java-app 容器中不可见有关的问题,但我不知道问题出在哪里,因为我已经提供了自定义网络并将容器名称用作主机名。

注意

ES 可通过“http://localhost:9200”访问

提前谢谢你。

【问题讨论】:

    标签: java docker elasticsearch


    【解决方案1】:

    Elasticsearch 在启动时会进行一些引导检查。如果你想在 Docker 中作为单节点启动它,你需要禁用这些,否则它不会打开 TCP/IP 端口。

    这可以通过指定环境参数来完成:discovery.type=single-node

    services:
      es:
        image: docker.elastic.co/elasticsearch/elasticsearch:7.6.1
        ports:
          - "9200:9200"
          - "9300:9300"
        environment:
          - discovery.type=single-node
    

    【讨论】:

    • 保存重要的一天,我尝试从 6.x 升级到 7.x,但我不明白错误...
    猜你喜欢
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    • 1970-01-01
    • 2021-10-07
    • 2023-03-30
    • 2021-02-03
    • 2019-06-07
    相关资源
    最近更新 更多