在Docker中以HTTP方式运行OpenDistro Elasticsearch

93次阅读
没有评论

问题描述

在尝试在自己的笔记本电脑上运行AWS OpenDistro Elasticsearch的Docker镜像进行测试。然而,在运行时,该镜像默认要求使用HTTPS连接,而用户想要以HTTP方式运行。用户使用以下命令来运行Docker镜像:

docker run -d --name elasticsearch-od -p 9200:9200 -p 9600:9600 -e "discovery.type=single-node"

解决方案

请注意以下操作可能涉及版本差异及修改前做好备份。
在Docker中以HTTP方式运行OpenDistro Elasticsearch需要进行以下步骤:

步骤1:更改环境变量

打开你的终端并运行以下命令,将Docker容器的环境变量从HTTPS更改为HTTP:

docker run -d --name elasticsearch-od -p 9200:9200 -p 9600:9600 -e "discovery.type=single-node" -e "ELASTICSEARCH_URL=http://odfe-node1:9200" -e "ELASTICSEARCH_HOSTS=http://odfe-node1:9200"

这将在Docker中运行OpenDistro Elasticsearch容器,并将ELASTICSEARCH_URL和ELASTICSEARCH_HOSTS环境变量设置为HTTP连接。

步骤2:修改Elasticsearch配置

为了确保Elasticsearch以HTTP方式运行,需要修改其配置。按照以下步骤操作:

  1. 进入已运行的Elasticsearch容器:
    bash
    docker exec -it elasticsearch-od /bin/bash

  2. 进入Elasticsearch配置目录:
    bash
    cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/

  3. 打开 elasticsearch.yml 配置文件以进行编辑:
    bash
    vi elasticsearch.yml

  4. 在配置文件中找到以下行并进行修改:
    yaml
    https-enabled: true

    修改为:
    yaml
    https-enabled: false

  5. 保存并退出编辑模式。

  6. 重启Elasticsearch容器,使配置生效:
    bash
    docker restart elasticsearch-od

至此,你已成功将OpenDistro Elasticsearch在Docker中切换为HTTP方式运行。

注意事项

  • 这些操作可能会因版本差异而有所不同,建议在进行修改之前先备份你的配置和数据。
  • 如果你仍然遇到问题,可以参考OpenDistro Elasticsearch的官方文档或社区支持获取更多帮助。

这样,你就可以在Docker中成功以HTTP方式运行OpenDistro Elasticsearch了。祝你使用愉快!

正文完