从另一个docker容器访问elasticsearch docker容器

问题描述 投票:0回答:1

我是docker新手,现在遇到了一个问题。我有一个弹性搜索容器,其中注入了数据。我也有已进行 dockerized 的 Flask 应用程序,但我无法将我的 Flask 容器与弹性搜索容器连接。我已尝试了所有我能找到/理解的选项,但仍然无法解决问题。

下面是我的 docker compose 文件的示例:

version: '3.8'
services:
  elasticsearch:
    image: elasticsearch:7.9.2
    container_name: intelligent_lovelace
    environment:
      discovery.type: single-node
    ports:
      - 9200:9200
    networks:
      - my_app

  app:
    build:
      context: .
      dockerfile: Dockerfile
    depends_on:
      - elasticsearch
    ports:
      - 5000:5000
    networks:
      - my_app

networks:
  my_app:

通过像这样提供elasticsearch,创建一个新的elasticsearch实例。如果有人能指出我在这里做错了什么,我将不胜感激..!!

docker docker-compose docker-container docker-image
1个回答
0
投票

遇到同样的问题,你找到解决办法了吗?

我正在使用它来连接:

es = Elasticsearch(
    "https://<user>:<password>@project_elasticsearch:9200",
)

但它只是不断给出同样的错误:

TLS error caused by: TlsError(TLS error caused by: SSLError([SSL: SSLV3_ALERT_ILLEGAL_PARAMETER] sslv3 alert illegal parameter (_ssl.c:1007)))

但是当尝试从容器外部连接时,它可以工作:

es = Elasticsearch(
    "https://<user>:<password>@localhost:9200",
)
© www.soinside.com 2019 - 2024. All rights reserved.